comparison src/core/ngx_resolver.c @ 7039:a39bc74873fa

Resolver: fixed allocation error handling while resolving SRV.
author Bart Warmerdam <bartw@xs4all.nl>
date Mon, 19 Jun 2017 14:25:42 +0300
parents a72886067bbb
children d49b74a683b1
comparison
equal deleted inserted replaced
7038:d1816a2696de 7039:a39bc74873fa
441 441
442 name.len = slen + 1 + ctx->name.len; 442 name.len = slen + 1 + ctx->name.len;
443 443
444 name.data = ngx_resolver_alloc(r, name.len); 444 name.data = ngx_resolver_alloc(r, name.len);
445 if (name.data == NULL) { 445 if (name.data == NULL) {
446 return NGX_ERROR; 446 goto failed;
447 } 447 }
448 448
449 if (slen == ctx->service.len) { 449 if (slen == ctx->service.len) {
450 ngx_sprintf(name.data, "%V.%V", &ctx->service, &ctx->name); 450 ngx_sprintf(name.data, "%V.%V", &ctx->service, &ctx->name);
451 451
478 /* NGX_ERROR */ 478 /* NGX_ERROR */
479 479
480 if (ctx->event) { 480 if (ctx->event) {
481 ngx_resolver_free(r, ctx->event); 481 ngx_resolver_free(r, ctx->event);
482 } 482 }
483
484 failed:
483 485
484 ngx_resolver_free(r, ctx); 486 ngx_resolver_free(r, ctx);
485 487
486 return NGX_ERROR; 488 return NGX_ERROR;
487 } 489 }