<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[120070] branches/release_2_3/base</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/120070">120070</a></dd>
<dt>Author</dt> <dd>cal@macports.org</dd>
<dt>Date</dt> <dd>2014-05-14 15:27:37 -0700 (Wed, 14 May 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="https://trac.macports.org/changeset/120059">r120059</a> from trunk:

 base: pextlib1.0: Use feature test macros to ensure standard compliance, fix warnings on Linux, uses C99</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#branchesrelease_2_3basesrcpextlib10Makefilein">branches/release_2_3/base/src/pextlib1.0/Makefile.in</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10Pextlibc">branches/release_2_3/base/src/pextlib1.0/Pextlib.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10curlc">branches/release_2_3/base/src/pextlib1.0/curl.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10filemapc">branches/release_2_3/base/src/pextlib1.0/filemap.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10fstraversec">branches/release_2_3/base/src/pextlib1.0/fs-traverse.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10mktempc">branches/release_2_3/base/src/pextlib1.0/mktemp.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10readlinec">branches/release_2_3/base/src/pextlib1.0/readline.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10realpathc">branches/release_2_3/base/src/pextlib1.0/realpath.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10rmd160cmdc">branches/release_2_3/base/src/pextlib1.0/rmd160cmd.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10setmodec">branches/release_2_3/base/src/pextlib1.0/setmode.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10strcasecmph">branches/release_2_3/base/src/pextlib1.0/strcasecmp.h</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10strsedc">branches/release_2_3/base/src/pextlib1.0/strsed.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10systemc">branches/release_2_3/base/src/pextlib1.0/system.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10tracelibc">branches/release_2_3/base/src/pextlib1.0/tracelib.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10ttyc">branches/release_2_3/base/src/pextlib1.0/tty.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10uidc">branches/release_2_3/base/src/pextlib1.0/uid.c</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10xinstallc">branches/release_2_3/base/src/pextlib1.0/xinstall.c</a></li>
</ul>

<h3>Property Changed</h3>
<ul>
<li><a href="#branchesrelease_2_3base">branches/release_2_3/base/</a></li>
<li><a href="#branchesrelease_2_3basesrcpextlib10Makefilein">branches/release_2_3/base/src/pextlib1.0/Makefile.in</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchesrelease_2_3base"></a>
<div class="propset"><h4>Property changes: branches/release_2_3/base</h4>
<pre class="diff"><span>
</span></pre></div>
<a id="svnmergeinfo"></a>
<div class="modfile"><h4>Modified: svn:mergeinfo</h4></div>
<span class="cx">/branches/gsoc09-logging/base:51231-60371
</span><span class="cx">/branches/gsoc11-rev-upgrade/base:78828-88375
</span><span class="cx">/branches/gsoc11-statistics/base:79520,79666
</span><span class="cx">/branches/gsoc13-tests:106692-111324
</span><span class="cx">/branches/universal-sanity/base:51872-52323
</span><span class="cx">/branches/variant-descs-14482/base:34469-34855,34900-37508,37511-37512,41040-41463,42575-42626,42640-42659
</span><span class="cx">/trunk/base:118038-118039,118056,118161,118559,118562-118569,118598-118599,118602-118603,118606-118607,118640,119169,119171,119175,119204,119297,119987,119992,120036,120038
</span><span class="cx">/users/perry/base-bugs_and_notes:45682-46060
</span><span class="cx">/users/perry/base-select:44044-44692
</span><span class="cx">   + /branches/gsoc08-privileges/base:37343-46937
</span><span class="cx">/branches/gsoc09-logging/base:51231-60371
</span><span class="cx">/branches/gsoc11-rev-upgrade/base:78828-88375
</span><span class="cx">/branches/gsoc11-statistics/base:79520,79666
</span><span class="cx">/branches/gsoc13-tests:106692-111324
</span><span class="cx">/branches/universal-sanity/base:51872-52323
</span><span class="cx">/branches/variant-descs-14482/base:34469-34855,34900-37508,37511-37512,41040-41463,42575-42626,42640-42659
</span><span class="cx">/trunk/base:118038-118039,118056,118161,118559,118562-118569,118598-118599,118602-118603,118606-118607,118640,119169,119171,119175,119204,119297,119987,119992,120036,120038,120059
</span><span class="cx">/users/perry/base-bugs_and_notes:45682-46060
</span><span class="cx">/users/perry/base-select:44044-44692
</span><a id="branchesrelease_2_3basesrcpextlib10Makefilein"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/Makefile.in (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/Makefile.in        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/Makefile.in        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -18,7 +18,7 @@
</span><span class="cx"> 
</span><span class="cx"> include $(srcdir)/../../Mk/macports.tea.mk
</span><span class="cx"> 
</span><del>-CFLAGS+= ${CURL_CFLAGS} ${MD5_CFLAGS} ${READLINE_CFLAGS} -D_BSD_SOURCE
</del><ins>+CFLAGS+= ${CURL_CFLAGS} ${MD5_CFLAGS} ${READLINE_CFLAGS}
</ins><span class="cx"> LIBS+= ${CURL_LIBS} ${MD5_LIBS} ${READLINE_LIBS}
</span><span class="cx"> ifeq ($(shell uname), Darwin)
</span><span class="cx"> LIBS+= ../registry2.0/registry${SHLIB_SUFFIX}
</span><span class="cx">Property changes on: branches/release_2_3/base/src/pextlib1.0/Makefile.in
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnmergeinfo"></a>
<div class="modfile"><h4>Modified: svn:mergeinfo</h4></div>
<span class="cx">/branches/gsoc09-logging/base/src/pextlib1.0/Makefile:51231-60371
</span><span class="cx">/branches/gsoc11-rev-upgrade/base/src/pextlib1.0/Makefile:78828-88375
</span><span class="cx">/branches/gsoc13-tests/src/pextlib1.0/Makefile.in:106692-111324
</span><span class="cx">/branches/universal-sanity/base/src/pextlib1.0/Makefile:51872-52323
</span><span class="cx">/branches/variant-descs-14482/base/src/pextlib1.0/Makefile:34469-34855,34900-37508,37511-37512,41040-41463,42575-42626,42640-42659
</span><span class="cx">/trunk/base/src/pextlib1.0/Makefile.in:118562-118569,119169,120038
</span><span class="cx">/users/perry/base-bugs_and_notes/src/pextlib1.0/Makefile:45682-46060
</span><span class="cx">/users/perry/base-select/src/pextlib1.0/Makefile:44044-44692
</span><span class="cx">   + /branches/gsoc08-privileges/base/src/pextlib1.0/Makefile:37343-46937
</span><span class="cx">/branches/gsoc09-logging/base/src/pextlib1.0/Makefile:51231-60371
</span><span class="cx">/branches/gsoc11-rev-upgrade/base/src/pextlib1.0/Makefile:78828-88375
</span><span class="cx">/branches/gsoc13-tests/src/pextlib1.0/Makefile.in:106692-111324
</span><span class="cx">/branches/universal-sanity/base/src/pextlib1.0/Makefile:51872-52323
</span><span class="cx">/branches/variant-descs-14482/base/src/pextlib1.0/Makefile:34469-34855,34900-37508,37511-37512,41040-41463,42575-42626,42640-42659
</span><span class="cx">/trunk/base/src/pextlib1.0/Makefile.in:118562-118569,119169,120038,120059
</span><span class="cx">/users/perry/base-bugs_and_notes/src/pextlib1.0/Makefile:45682-46060
</span><span class="cx">/users/perry/base-select/src/pextlib1.0/Makefile:44044-44692
</span><a id="branchesrelease_2_3basesrcpextlib10Pextlibc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/Pextlib.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/Pextlib.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/Pextlib.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -33,10 +33,17 @@
</span><span class="cx">  * POSSIBILITY OF SUCH DAMAGE.
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#if HAVE_CONFIG_H
</del><ins>+#ifdef HAVE_CONFIG_H
</ins><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for strdup(3) on Linux and OS X */
+#define _XOPEN_SOURCE 600L
+/* required for clearenv(3)/setenv(3)/unsetenv(3) on Linux */
+#define _BSD_SOURCE
+/* required for clearenv(3)/setenv(3)/unsetenv(3) on OS X */
+#define _DARWIN_C_SOURCE
+
</ins><span class="cx"> #include &lt;sys/types.h&gt;
</span><span class="cx"> #include &lt;sys/socket.h&gt;
</span><span class="cx"> #include &lt;sys/stat.h&gt;
</span><span class="lines">@@ -361,13 +368,6 @@
</span><span class="cx"> int UnsetEnvCmd(ClientData clientData UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span class="cx"> {
</span><span class="cx">     char *name;
</span><del>-    char **envp;
-    char *equals;
-    size_t len;
-    Tcl_Obj *tclList;
-    int listLength;
-    Tcl_Obj **listArray;
-    int loopCounter;
</del><span class="cx"> 
</span><span class="cx">     if (objc != 2) {
</span><span class="cx">         Tcl_WrongNumArgs(interp, 1, objv, &quot;name&quot;);
</span><span class="lines">@@ -386,18 +386,21 @@
</span><span class="cx">            clearenv() but that is not yet standardized, instead use Tcl's
</span><span class="cx">            list capability to easily build an array of strings for each
</span><span class="cx">            env name, then loop through that list to unsetenv() each one */
</span><del>-        tclList = Tcl_NewListObj( 0, NULL );
</del><ins>+        Tcl_Obj *tclList = Tcl_NewListObj( 0, NULL );
</ins><span class="cx">         Tcl_IncrRefCount( tclList );
</span><span class="cx">         /* unset all current environment variables */
</span><del>-        for (envp = environ; *envp != NULL; envp++) {
-            equals = strchr(*envp, '=');
</del><ins>+        for (char **envp = environ; *envp != NULL; envp++) {
+            char *equals = strchr(*envp, '=');
</ins><span class="cx">             if (equals != NULL) {
</span><del>-                len = (size_t)(equals - *envp);
</del><ins>+                                size_t len = (size_t)(equals - *envp);
</ins><span class="cx">                 Tcl_ListObjAppendElement(interp, tclList, Tcl_NewStringObj(*envp, len));
</span><span class="cx">             }
</span><span class="cx">         }
</span><ins>+
+                int listLength;
+                Tcl_Obj **listArray;
</ins><span class="cx">         Tcl_ListObjGetElements(interp, tclList, &amp;listLength, &amp;listArray);
</span><del>-        for (loopCounter = 0; loopCounter &lt; listLength; loopCounter++) {
</del><ins>+        for (int loopCounter = 0; loopCounter &lt; listLength; loopCounter++) {
</ins><span class="cx">             unsetenv(Tcl_GetString(listArray[loopCounter]));
</span><span class="cx">         }
</span><span class="cx">         Tcl_DecrRefCount( tclList );
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10curlc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/curl.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/curl.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/curl.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -61,7 +61,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Definitions
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark Definitions
</del><span class="cx"> 
</span><span class="cx"> /* ------------------------------------------------------------------------- **
</span><span class="cx">  * Global cURL handle
</span><span class="lines">@@ -93,8 +92,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Entry points
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark -
-#pragma mark Entry points
</del><span class="cx"> 
</span><span class="cx"> /**
</span><span class="cx">  * Set the result if a libcurl error occurred return TCL_ERROR.
</span><span class="lines">@@ -1291,8 +1288,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Callback function
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark -
-#pragma mark Callback function
</del><span class="cx"> static int CurlProgressHandler(
</span><span class="cx">                 tcl_callback_t *callback,
</span><span class="cx">                 double dltotal,
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10filemapc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/filemap.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/filemap.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/filemap.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -30,10 +30,13 @@
</span><span class="cx">  * POSSIBILITY OF SUCH DAMAGE.
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#if HAVE_CONFIG_H
</del><ins>+#ifdef HAVE_CONFIG_H
</ins><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* needed for NAME_MAX and PATH_MAX on Linux */
+#define _XOPEN_SOURCE
+
</ins><span class="cx"> #include &lt;sys/stat.h&gt;
</span><span class="cx"> #include &lt;errno.h&gt;
</span><span class="cx"> #include &lt;fcntl.h&gt;
</span><span class="lines">@@ -48,7 +51,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Definitions
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark Definitions
</del><span class="cx"> 
</span><span class="cx"> /* ------------------------------------------------------------------------- **
</span><span class="cx">  * Internal structures
</span><span class="lines">@@ -184,8 +186,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Tree access functions
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark -
-#pragma mark Access functions
</del><span class="cx"> 
</span><span class="cx"> /**
</span><span class="cx">  * Load the database from a file.
</span><span class="lines">@@ -1118,8 +1118,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Tcl object functions
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark -
-#pragma mark Tcl object functions
</del><span class="cx"> 
</span><span class="cx"> /**
</span><span class="cx">  * Free the object.
</span><span class="lines">@@ -1205,8 +1203,6 @@
</span><span class="cx"> /* ========================================================================= **
</span><span class="cx">  * Entry points
</span><span class="cx">  * ========================================================================= */
</span><del>-#pragma mark -
-#pragma mark Entry points
</del><span class="cx"> 
</span><span class="cx"> /**
</span><span class="cx">  * Set the result if an error occurred and return TCL_ERROR.
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10fstraversec"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/fs-traverse.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/fs-traverse.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/fs-traverse.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -38,6 +38,10 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for u_short in fts.h on Linux; I think this can be considered a bug
+ * in the system header, though. */
+#define _BSD_SOURCE
+
</ins><span class="cx"> #include &lt;sys/types.h&gt;
</span><span class="cx"> #include &lt;sys/stat.h&gt;
</span><span class="cx"> #include &lt;errno.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10mktempc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/mktemp.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/mktemp.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/mktemp.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -34,6 +34,13 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for strdup(3)/mkdtemp(3) on Linux */
+#define _XOPEN_SOURCE 700L
+/* required for mktemp(3) if _XOPEN_SOURCE &gt;= 600L on Linux */
+#define _BSD_SOURCE
+/* required for mkdtemp(3) on OS X */
+#define _DARWIN_C_SOURCE
+
</ins><span class="cx"> #include &lt;errno.h&gt;
</span><span class="cx"> #include &lt;stdlib.h&gt;
</span><span class="cx"> #include &lt;string.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10readlinec"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/readline.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/readline.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/readline.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -8,19 +8,22 @@
</span><span class="cx">  *
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-#if HAVE_CONFIG_H
</del><ins>+#ifdef HAVE_CONFIG_H
</ins><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for strdup(3) on Linux and OS X */
+#define _XOPEN_SOURCE 600L
+
</ins><span class="cx"> #include &lt;stdio.h&gt;
</span><span class="cx"> #include &lt;stdlib.h&gt;
</span><span class="cx"> #include &lt;string.h&gt;
</span><span class="cx"> 
</span><del>-#if HAVE_READLINE_READLINE_H
</del><ins>+#ifdef HAVE_READLINE_READLINE_H
</ins><span class="cx"> #include &lt;readline/readline.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if HAVE_READLINE_HISTORY_H
</del><ins>+#ifdef HAVE_READLINE_HISTORY_H
</ins><span class="cx"> #include &lt;readline/history.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -29,7 +32,7 @@
</span><span class="cx"> #include &quot;readline.h&quot;
</span><span class="cx"> 
</span><span class="cx"> /* Globals */
</span><del>-#if HAVE_READLINE_READLINE_H
</del><ins>+#ifdef HAVE_READLINE_READLINE_H
</ins><span class="cx"> Tcl_Interp* completion_interp = NULL;
</span><span class="cx"> Tcl_Obj* attempted_completion_word = NULL;
</span><span class="cx"> Tcl_Obj* generator_word = NULL;
</span><span class="lines">@@ -55,7 +58,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx"> char*
</span><span class="cx"> completion_generator(const char* text, int state)
</span><span class="cx"> {
</span><span class="lines">@@ -156,7 +159,7 @@
</span><span class="cx"> {
</span><span class="cx">         char* action;
</span><span class="cx">         Tcl_Obj *tcl_result;
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx">         int argbase;
</span><span class="cx">         int argcnt;
</span><span class="cx"> #endif
</span><span class="lines">@@ -173,7 +176,7 @@
</span><span class="cx">         
</span><span class="cx">                 int initOk = 0;
</span><span class="cx">                 
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx">                 /* Set the name of our program, so .inputrc can be conditionalized */
</span><span class="cx">                 if (objc == 3) {
</span><span class="cx">                         rl_readline_name = strdup(Tcl_GetString(objv[2]));
</span><span class="lines">@@ -194,7 +197,7 @@
</span><span class="cx">                 tcl_result = Tcl_NewIntObj(initOk);        
</span><span class="cx">                 Tcl_SetObjResult(interp, tcl_result);
</span><span class="cx"> 
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx">         } else if (0 == strcmp(&quot;read&quot;, action)) {
</span><span class="cx">         
</span><span class="cx">                 char* s;
</span><span class="lines">@@ -272,7 +275,7 @@
</span><span class="cx"> int RLHistoryCmd(ClientData clientData UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
</span><span class="cx"> {
</span><span class="cx">         char* action = NULL;
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx">         char* s = NULL;
</span><span class="cx">         int i = 0;
</span><span class="cx">         Tcl_Obj *tcl_result;
</span><span class="lines">@@ -286,7 +289,7 @@
</span><span class="cx"> 
</span><span class="cx">         /* Case out on action */
</span><span class="cx">         if (0) {
</span><del>-#if HAVE_LIBREADLINE
</del><ins>+#ifdef HAVE_LIBREADLINE
</ins><span class="cx">         } else if (0 == strcmp(&quot;add&quot;, action)) {
</span><span class="cx">                 if (objc != 3) {
</span><span class="cx">                         Tcl_WrongNumArgs(interp, 1, objv, &quot;add line&quot;);
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10realpathc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/realpath.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/realpath.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/realpath.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -34,6 +34,9 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for PATH_MAX and realpath(3) */
+#define _XOPEN_SOURCE 500
+
</ins><span class="cx"> #include &lt;tcl.h&gt;
</span><span class="cx"> 
</span><span class="cx"> #include &lt;errno.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10rmd160cmdc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/rmd160cmd.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/rmd160cmd.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/rmd160cmd.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -35,6 +35,9 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for u_char on Linux */
+#define _BSD_SOURCE
+
</ins><span class="cx"> #include &lt;string.h&gt;
</span><span class="cx"> #include &lt;stdio.h&gt;
</span><span class="cx"> #include &lt;fcntl.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10setmodec"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/setmode.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/setmode.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/setmode.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -46,6 +46,11 @@
</span><span class="cx"> #endif
</span><span class="cx"> #endif /* LIBC_SCCS and not lint */
</span><span class="cx"> 
</span><ins>+/* required for sigfillset(3)/sigemptyset(3) and S_ISVTX */
+#define _XOPEN_SOURCE 500
+/* required for u_int and u_long */
+#define _BSD_SOURCE
+
</ins><span class="cx"> #include &lt;sys/types.h&gt;
</span><span class="cx"> #include &lt;sys/stat.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -190,7 +195,7 @@
</span><span class="cx">         BITCMD *set, *saveset, *endset;
</span><span class="cx">         sigset_t sigset, sigoset;
</span><span class="cx">         mode_t mask;
</span><del>-        int equalopdone, permXbits, setlen;
</del><ins>+        int equalopdone = 0, permXbits, setlen;
</ins><span class="cx">         long perml;
</span><span class="cx"> 
</span><span class="cx">         if (!*p)
</span><span class="lines">@@ -378,7 +383,7 @@
</span><span class="cx">         case '-':
</span><span class="cx">         case 'X':
</span><span class="cx">                 set-&gt;cmd = op;
</span><del>-                set-&gt;bits = (who ? who : mask) &amp; oparg;
</del><ins>+                set-&gt;bits = (who ? ((mode_t) who) : ((mode_t) mask)) &amp; oparg;
</ins><span class="cx">                 break;
</span><span class="cx"> 
</span><span class="cx">         case 'u':
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10strcasecmph"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/strcasecmp.h (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/strcasecmp.h        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/strcasecmp.h        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -30,13 +30,18 @@
</span><span class="cx">  * POSSIBILITY OF SUCH DAMAGE.
</span><span class="cx">  */
</span><span class="cx"> 
</span><ins>+#ifdef HAVE_CONFIG_H
+#include &lt;config.h&gt;
+#endif
+
</ins><span class="cx"> #include &lt;string.h&gt;
</span><ins>+#include &lt;strings.h&gt;
</ins><span class="cx"> 
</span><del>-#if !HAVE_STRCASECMP
</del><ins>+#ifndef HAVE_STRCASECMP
</ins><span class="cx">         #define strcasecmp xstrcasecmp
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if !HAVE_STRNCASECMP
</del><ins>+#ifndef HAVE_STRNCASECMP
</ins><span class="cx">         #define strncasecmp xstrncasecmp
</span><span class="cx"> #endif
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10strsedc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/strsed.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/strsed.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/strsed.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -131,6 +131,9 @@
</span><span class="cx"> 
</span><span class="cx"> #include &quot;strsed.h&quot;
</span><span class="cx"> 
</span><ins>+/* required for strdup(3) on Linux and OS X */
+#define _XOPEN_SOURCE 600L
+
</ins><span class="cx"> #include &lt;ctype.h&gt;
</span><span class="cx"> #include &lt;string.h&gt;
</span><span class="cx"> #include &lt;stdlib.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10systemc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/system.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/system.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/system.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -36,6 +36,11 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for fdopen(3)/seteuid(2), among others */
+#define _XOPEN_SOURCE 600
+/* required for fgetln(3) on OS X */
+#define _DARWIN_C_SOURCE
+
</ins><span class="cx"> #include &lt;tcl.h&gt;
</span><span class="cx"> 
</span><span class="cx"> #if HAVE_PATHS_H
</span><span class="lines">@@ -111,8 +116,8 @@
</span><span class="cx">     char *args[7];
</span><span class="cx">     char *cmdstring;
</span><span class="cx">     int sandbox = 0;
</span><del>-    char *sandbox_exec_path;
-    char *profilestr;
</del><ins>+    char *sandbox_exec_path = NULL;
+    char *profilestr = NULL;
</ins><span class="cx">     FILE *pdes;
</span><span class="cx">     int fdset[2], nullfd;
</span><span class="cx">     int fline, pos, ret;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10tracelibc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/tracelib.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/tracelib.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/tracelib.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -848,6 +848,14 @@
</span><span class="cx"> 
</span><span class="cx"> int TracelibCmd(ClientData clientData UNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
</span><span class="cx">     int result = TCL_OK;
</span><ins>+
+    /* There is no args for commands now. */
+    if (objc &lt; 2) {
+        Tcl_WrongNumArgs(interp, 1, objv, &quot;option&quot;);
+        return TCL_ERROR;
+    }
+
+#ifdef HAVE_TRACEMODE_SUPPORT
</ins><span class="cx">     static const char *options[] = {&quot;setname&quot;, &quot;opensocket&quot;, &quot;run&quot;, &quot;clean&quot;, &quot;setsandbox&quot;, &quot;closesocket&quot;, &quot;setdeps&quot;, &quot;enablefence&quot;, 0};
</span><span class="cx">     typedef enum {
</span><span class="cx">         kSetName,
</span><span class="lines">@@ -861,13 +869,6 @@
</span><span class="cx">     } EOptions;
</span><span class="cx">     EOptions current_option;
</span><span class="cx"> 
</span><del>-    /* There is no args for commands now. */
-    if (objc &lt; 2) {
-        Tcl_WrongNumArgs(interp, 1, objv, &quot;option&quot;);
-        return TCL_ERROR;
-    }
-
-#ifdef HAVE_TRACEMODE_SUPPORT
</del><span class="cx">     result = Tcl_GetIndexFromObj(interp, objv[1], options, &quot;option&quot;, 0, (int *)&amp;current_option);
</span><span class="cx">     if (result == TCL_OK) {
</span><span class="cx">         switch (current_option) {
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10ttyc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/tty.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/tty.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/tty.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -38,6 +38,7 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+#include &lt;stdint.h&gt;
</ins><span class="cx"> #include &lt;sys/ioctl.h&gt;
</span><span class="cx"> #include &lt;unistd.h&gt;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10uidc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/uid.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/uid.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/uid.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -12,6 +12,9 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for seteuid(2)/setegid(2) */
+#define _BSD_SOURCE
+
</ins><span class="cx"> #include &lt;sys/types.h&gt;
</span><span class="cx"> #include &lt;grp.h&gt;
</span><span class="cx"> #include &lt;pwd.h&gt;
</span></span></pre></div>
<a id="branchesrelease_2_3basesrcpextlib10xinstallc"></a>
<div class="modfile"><h4>Modified: branches/release_2_3/base/src/pextlib1.0/xinstall.c (120069 => 120070)</h4>
<pre class="diff"><span>
<span class="info">--- branches/release_2_3/base/src/pextlib1.0/xinstall.c        2014-05-14 22:24:13 UTC (rev 120069)
+++ branches/release_2_3/base/src/pextlib1.0/xinstall.c        2014-05-14 22:27:37 UTC (rev 120070)
</span><span class="lines">@@ -41,6 +41,9 @@
</span><span class="cx"> #include &lt;config.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><ins>+/* required for u_int and u_long */
+#define _BSD_SOURCE
+
</ins><span class="cx"> #if HAVE_SYS_CDEFS_H
</span><span class="cx"> #include &lt;sys/cdefs.h&gt;
</span><span class="cx"> #endif
</span><span class="lines">@@ -148,7 +151,7 @@
</span><span class="cx">         u_long fset = 0;
</span><span class="cx">         int no_target, rval;
</span><span class="cx">         u_int iflags;
</span><del>-        char *flags, *curdir;
</del><ins>+        char *curdir;
</ins><span class="cx">         const char *group, *owner, *cp;
</span><span class="cx">         Tcl_Obj *to_name;
</span><span class="cx">         int dodir = 0;
</span><span class="lines">@@ -198,7 +201,7 @@
</span><span class="cx">                                 Tcl_WrongNumArgs(interp, 1, objv, &quot;-f&quot;);
</span><span class="cx">                                 return TCL_ERROR;
</span><span class="cx">                         }
</span><del>-                        flags = Tcl_GetString(*(++objv));
</del><ins>+                        char *flags = Tcl_GetString(*(++objv));
</ins><span class="cx">                         if (strtofflags(&amp;flags, &amp;fset, NULL)) {
</span><span class="cx">                                 Tcl_SetResult(interp, &quot;invalid flags for -f&quot;, TCL_STATIC);
</span><span class="cx">                                 return TCL_ERROR;
</span><span class="lines">@@ -428,7 +431,11 @@
</span><span class="cx">  *        build a path name and install the file
</span><span class="cx">  */
</span><span class="cx"> static int
</span><ins>+#if defined(UF_NODUMP)
</ins><span class="cx"> install(Tcl_Interp *interp, const char *from_name, const char *to_name, u_long fset, u_int flags)
</span><ins>+#else
+install(Tcl_Interp *interp, const char *from_name, const char *to_name, u_long fset UNUSED, u_int flags)
+#endif
</ins><span class="cx"> {
</span><span class="cx">         struct stat from_sb, temp_sb, to_sb;
</span><span class="cx">         struct timeval tvb[2];
</span><span class="lines">@@ -869,7 +876,11 @@
</span><span class="cx">  *        create a new file, overwriting an existing one if necessary
</span><span class="cx">  */
</span><span class="cx"> static int
</span><ins>+#if defined(UF_IMMUTABLE) &amp;&amp; defined(SF_IMMUTABLE)
</ins><span class="cx"> create_newfile(Tcl_Interp *interp, const char *path, int target, struct stat *sbp)
</span><ins>+#else
+create_newfile(Tcl_Interp *interp, const char *path, int target, struct stat *sbp UNUSED)
+#endif
</ins><span class="cx"> {
</span><span class="cx">         char backup[MAXPATHLEN];
</span><span class="cx">         int saved_errno = 0;
</span><span class="lines">@@ -1105,7 +1116,11 @@
</span><span class="cx">  *        return true (1) if mmap should be tried, false (0) if not.
</span><span class="cx">  */
</span><span class="cx"> int
</span><ins>+#ifdef MFSNAMELEN
</ins><span class="cx"> trymmap(int fd)
</span><ins>+#else
+trymmap(int fd UNUSED)
+#endif
</ins><span class="cx"> {
</span><span class="cx"> /*
</span><span class="cx">  * The ifdef is for bootstrapping - f_fstypename doesn't exist in
</span></span></pre>
</div>
</div>

</body>
</html>