mirror of
https://git.freebsd.org/ports.git
synced 2025-06-18 03:00:42 -04:00
"reallocate" memory even when the programmer only asks for a resizing of the region. Reported by: Steve Ames <steve@energistic.com> While I'm here, change the way SSL header and library paths are handled to avoid specifically referencing /usr/lib and /usr/include; while -STABLE's GCC shrugs this off, GCC 3.1 whines loudly about an explicit -I/usr/include (and rightly so, IMHO).
33 lines
921 B
C
33 lines
921 B
C
--- lib/hostip.c.orig Mon Jun 24 17:05:50 2002
|
|
+++ lib/hostip.c Mon Jun 24 17:05:54 2002
|
|
@@ -360,7 +360,7 @@
|
|
*
|
|
* Keith McGuigan
|
|
* 10/3/2001 */
|
|
-static struct hostent* pack_hostent(char** buf, struct hostent* orig)
|
|
+static struct hostent* pack_hostent(char** buf, struct hostent* orig, int pass)
|
|
{
|
|
char* bufptr;
|
|
struct hostent* copy;
|
|
@@ -427,8 +427,9 @@
|
|
}
|
|
copy->h_addr_list[i] = NULL;
|
|
|
|
- *buf=(char *)realloc(*buf, (int)bufptr-(int)(*buf));
|
|
- return copy;
|
|
+ if (pass == 0)
|
|
+ *buf=(char *)realloc(*buf, (int)bufptr-(int)(*buf));
|
|
+ return *buf;
|
|
}
|
|
#endif
|
|
|
|
@@ -623,7 +624,8 @@
|
|
/* we make a copy of the hostent right now, right here, as the
|
|
static one we got a pointer to might get removed when we don't
|
|
want/expect that */
|
|
- h = pack_hostent(&buf, h);
|
|
+ pack_hostent(&buf, h, 0);
|
|
+ h = pack_hostent(&buf, h, 1);
|
|
*bufp=(char *)buf;
|
|
}
|
|
#endif
|