From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id D64CC385781D; Wed, 19 Jan 2022 07:55:22 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D64CC385781D Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin/cygwin-3_3-branch] Cygwin: resolver: A few fixes for cygwin_query(), part 2 X-Act-Checkin: newlib-cygwin X-Git-Author: Anton Lavrentiev via Cygwin-patches X-Git-Refname: refs/heads/cygwin-3_3-branch X-Git-Oldrev: 7b1d4c732e474cfba0bcd91b812da90a7298c982 X-Git-Newrev: aa51dd3b92082c829cc1b49eae485891ea2d170b Message-Id: <20220119075522.D64CC385781D@sourceware.org> Date: Wed, 19 Jan 2022 07:55:22 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2022 07:55:22 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3Daa51dd3b920= 82c829cc1b49eae485891ea2d170b commit aa51dd3b92082c829cc1b49eae485891ea2d170b Author: Anton Lavrentiev via Cygwin-patches Date: Tue Jan 18 19:07:55 2022 -0500 Cygwin: resolver: A few fixes for cygwin_query(), part 2 =20 Make sure Windows ResultSet is free'd when dn_comp failed internally Diff: --- winsup/cygwin/libc/minires-os-if.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/libc/minires-os-if.c b/winsup/cygwin/libc/minire= s-os-if.c index dce856076..cd56be45c 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 * D= omName, int Class, int Ty statp->res_h_errno =3D NO_RECOVERY; break; } - len =3D -1; - goto done; + return -1; } =20 ptr =3D AnsPtr + HFIXEDSZ; /* Skip header */ @@ -293,10 +292,12 @@ static int cygwin_query(res_state statp, const char *= DomName, int Class, int Ty rr =3D rr->pNext; } =20 - DnsFree(pQueryResultsSet, DnsFreeRecordList); - len =3D ptr - AnsPtr; + done: + + DnsFree(pQueryResultsSet, DnsFreeRecordList); + if (HFIXEDSZ <=3D AnsLength) { ptr =3D AnsPtr; PUTSHORT(Id, ptr);