aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/libc/minires-os-if.c
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/libc/minires-os-if.c')
-rw-r--r--winsup/cygwin/libc/minires-os-if.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/winsup/cygwin/libc/minires-os-if.c b/winsup/cygwin/libc/minires-os-if.c
index 5da1c0c..c6fde77 100644
--- a/winsup/cygwin/libc/minires-os-if.c
+++ b/winsup/cygwin/libc/minires-os-if.c
@@ -246,8 +246,7 @@ static int cygwin_query(res_state statp, const char * DomName, int Class, int Ty
statp->res_h_errno = NO_RECOVERY;
break;
}
- len = -1;
- goto done;
+ return -1;
}
ptr = AnsPtr + HFIXEDSZ; /* Skip header */
@@ -293,10 +292,12 @@ static int cygwin_query(res_state statp, const char * DomName, int Class, int Ty
rr = rr->pNext;
}
- DnsFree(pQueryResultsSet, DnsFreeRecordList);
-
len = ptr - AnsPtr;
+
done:
+
+ DnsFree(pQueryResultsSet, DnsFreeRecordList);
+
if (HFIXEDSZ <= AnsLength) {
ptr = AnsPtr;
PUTSHORT(Id, ptr);