Update of /cvsroot/fink/dists/10.7/stable/main/finkinfo/utils
In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv7408

Modified Files:
        expect.patch 
Log Message:
update x86_64 variant to 5.45 and assume maintainership

Index: expect.patch
===================================================================
RCS file: /cvsroot/fink/dists/10.7/stable/main/finkinfo/utils/expect.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- expect.patch        21 Jul 2011 17:52:14 -0000      1.1
+++ expect.patch        15 Jul 2013 23:40:30 -0000      1.2
@@ -1,234 +1,84 @@
-diff -up expect-5.43/exp_chan.c.spawn expect-5.43/exp_chan.c
---- expect-5.43/exp_chan.c.spawn       2005-02-08 03:01:20.000000000 +0100
-+++ expect-5.43/exp_chan.c     2008-09-25 12:22:14.000000000 +0200
-@@ -622,6 +622,7 @@ expCreateChannel(interp,fdin,fdout,pid)
-     esPtr->buffer = Tcl_NewStringObj("",0);
-     Tcl_IncrRefCount(esPtr->buffer);
-     esPtr->umsize = exp_default_match_max;
-+    esPtr->umsize_changed = exp_default_match_max_changed;
-     /* this will reallocate object with an appropriate sized buffer */
-     expAdjust(esPtr);
- 
-diff -up expect-5.43/exp_command.h.spawn expect-5.43/exp_command.h
---- expect-5.43/exp_command.h.spawn    2004-07-30 17:35:28.000000000 +0200
-+++ expect-5.43/exp_command.h  2008-09-25 12:22:14.000000000 +0200
-@@ -30,6 +30,7 @@ would appreciate credit if this program 
- EXTERN char *         exp_get_var _ANSI_ARGS_((Tcl_Interp *,char *));
+--- expect5.45/exp_inter.c.orig        2013-07-14 13:25:14.000000000 -0400
++++ expect5.45/exp_inter.c     2013-07-14 13:30:18.000000000 -0400
+@@ -404,8 +404,8 @@
+     int matchBytes)
+ {
+     int seenBytes;    /* either printed or echoed */
+-    int echoBytes;
+-    int offsetBytes;
++    int echoBytes = 0;
++    int offsetBytes = 0;
  
- EXTERN int exp_default_match_max;
-+EXTERN int exp_default_match_max_changed;
- EXTERN int exp_default_parity;
- EXTERN int exp_default_rm_nulls;
- EXTERN int exp_default_close_on_eof;
-@@ -103,6 +104,7 @@ typedef struct ExpState {
-     int msize;                /* # of bytes that buffer can hold (max) */
-     int umsize;               /* # of bytes (min) that is guaranteed to match 
*/
-                       /* this comes from match_max command */
-+    int umsize_changed;       /* is umsize changed by user?  */
-     int printed;      /* # of bytes written to stdout (if logging on) */
-                         /* but not actually returned via a match yet */
-     int echoed;               /* additional # of bytes (beyond "printed" 
above) */
-diff -up expect-5.43/expect.c.spawn expect-5.43/expect.c
---- expect-5.43/expect.c.spawn 2004-07-07 01:26:02.000000000 +0200
-+++ expect-5.43/expect.c       2008-09-25 12:22:14.000000000 +0200
-@@ -41,8 +41,17 @@ would appreciate credit if this program 
- #include "tcldbg.h"
- #endif
+     /* write is unlikely to fail, since we just read from same descriptor */
+     seenBytes = esPtr->printed + esPtr->echoed;
+@@ -437,7 +437,7 @@
+     int key)
+ {
+     Tcl_UniChar *eobOld;  /* old end of buffer */
+-    int cc;
++    int cc = 0;
+     int numchars;
+     Tcl_UniChar *str;
  
-+/* The initial length is 2000. We increment it by 2000. The maximum
-+   is 8MB (0x800000).  */
-+#define EXP_MATCH_MAX         2000
-+#define EXP_MATCH_INC         2000
-+#define EXP_MATCH_STEP_LIMIT  0x700000
-+#define EXP_MATCH_LIMIT               0x800000
-+#define EXP_MATCH_LIMIT_QUOTE "0x800000"
-+
- /* initial length of strings that we can guarantee patterns can match */
--int exp_default_match_max =   2000;
-+int exp_default_match_max =   EXP_MATCH_MAX;
-+int exp_default_match_max_changed = 0;
- #define INIT_EXPECT_TIMEOUT_LIT       "10"    /* seconds */
- #define INIT_EXPECT_TIMEOUT   10      /* seconds */
- int exp_default_parity =      TRUE;
-@@ -1619,6 +1628,76 @@ expNullStrip(obj,offsetBytes)
-     return newsize;
- }
+--- expect5.45/expect.c.orig   2013-07-14 13:28:09.000000000 -0400
++++ expect5.45/expect.c        2010-10-26 18:09:36.000000000 -0400
+@@ -2899,7 +2899,7 @@
+     int def = FALSE;
+     char* chan = NULL;
+     int i;
+-    ExpState *esPtr;
++    ExpState *esPtr = NULL;
  
-+/* returns # of bytes until we see a newline at the end or EOF.  */
-+/*ARGSUSED*/
-+static int
-+expReadNewLine(interp,esPtr,save_flags) /* INTL */
-+Tcl_Interp *interp;
-+ExpState *esPtr;
-+int save_flags;
-+{
-+    int size;
-+    int exp_size;
-+    int full_size;
-+    int count;
-+    char *str;
-+
-+    count = 0;
-+    for (;;) {
-+      exp_size = expSizeGet(esPtr);
-+
-+      /* When we reach the limit, we will only read one char at a
-+         time.  */
-+      if (esPtr->umsize >= EXP_MATCH_STEP_LIMIT)
-+          size = TCL_UTF_MAX;
-+      else
-+          size = exp_size;
-+
-+      if (exp_size + TCL_UTF_MAX >= esPtr->msize) {
-+          if (esPtr->umsize >= EXP_MATCH_LIMIT) {
-+              expDiagLogU("WARNING: interact buffer is full. probably your 
program\r\n");
-+              expDiagLogU("is not interactive or has a very long output line. 
The\r\n");
-+              expDiagLogU("current limit is " EXP_MATCH_LIMIT_QUOTE ".\r\n");
-+              expDiagLogU("Dumping first half of buffer in order to 
continue\r\n");
-+              expDiagLogU("Recommend you enlarge the buffer.\r\n");
-+              exp_buffer_shuffle(interp,esPtr,save_flags,EXPECT_OUT,"expect");
-+              return count;
-+          }
-+          else {
-+              esPtr->umsize += EXP_MATCH_INC;
-+              expAdjust(esPtr);
-+          }
-+      }
-+
-+      full_size = esPtr->msize - (size / TCL_UTF_MAX);
-+      size = Tcl_ReadChars(esPtr->channel,
-+                      esPtr->buffer,
-+                      full_size,
-+                      1 /* append */);
-+      if (size > 0) {
-+          count += size;
-+          /* We try again if there are more to read and we haven't
-+             seen a newline at the end. */
-+          if (size == full_size) {
-+              str = Tcl_GetStringFromObj(esPtr->buffer, &size);
-+              if (str[size - 1] != '\n')
-+                  continue;
-+          }
-+      }
-+      else {
-+          /* It is even trickier. We got an error from read. We have
-+             to recover from it. Let's make sure the size of
-+             buffer is correct. It can be corrupted. */
-+          str = Tcl_GetString(esPtr->buffer);
-+          Tcl_SetObjLength(esPtr->buffer, strlen(str));
-+      }
-+
-+      break;
-+    }
-+
-+    return count;
-+}
-+
- /* returns # of bytes read or (non-positive) error of form EXP_XXX */
- /* returns 0 for end of file */
- /* If timeout is non-zero, set an alarm before doing the read, else assume */
-@@ -1633,6 +1712,8 @@ int save_flags;
+     for (i=1; i<objc; i++) {
+       char *name;
+--- expect5.45/exp_log.c.orig  2013-07-14 13:41:34.000000000 -0400
++++ expect5.45/exp_log.c       2013-07-14 13:41:56.000000000 -0400
+@@ -85,7 +85,7 @@
+     Tcl_UniChar *buf;
+     int lenChars;
  {
-     int cc = EXP_TIMEOUT;
-     int size = expSizeGet(esPtr);
-+    int full_size;
-+    int count;
+-    int wc;
++    int wc = 0;
+     ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
  
-     if (size + TCL_UTF_MAX >= esPtr->msize) 
-       exp_buffer_shuffle(interp,esPtr,save_flags,EXPECT_OUT,"expect");
-@@ -1649,11 +1730,43 @@ int save_flags;
-     }
- #endif
+     if (esPtr->valid)
+--- expect5.45/expect.c.orig   2013-07-14 13:43:25.000000000 -0400
++++ expect5.45/expect.c        2013-07-14 13:44:06.000000000 -0400
+@@ -2363,7 +2363,12 @@
  
--    
-+    /* FIXME: If we ask less than what is available in the tcl buffer
-+       when tcl has seen EOF, we will throw away the remaining data
-+       since the next read will get EOF. Since expect is line-oriented,
-+       we exand our buffer to get EOF or the next newline at the end of
-+       the input buffer. I don't know if it is the right fix.  H.J. */
-+    count = 0;
-+    full_size = esPtr->msize - (size / TCL_UTF_MAX);
-     cc = Tcl_ReadChars(esPtr->channel,
--          esPtr->buffer,
--          esPtr->msize - (size / TCL_UTF_MAX),
--          1 /* append */);
-+              esPtr->buffer,
-+              full_size,
-+              1 /* append */);
-+    if (cc > 0) {
-+      count += cc;
-+      /* It gets very tricky. There are more to read. We will expand
-+         our buffer and get EOF or a newline at the end unless the
-+         buffer length has been changed.  */
-+      if (cc == full_size) {
-+          char *str;
-+          str = Tcl_GetStringFromObj(esPtr->buffer, &size);
-+          if (str[size - 1] != '\n') {
-+              if (esPtr->umsize_changed) {
-+                  char buf[20];       /* big enough for 64bit int in hex.  */
-+                  snprintf(buf,sizeof(buf),"0x%x", esPtr->umsize);
-+                  expDiagLogU("WARNING: interact buffer is not large enough 
to hold\r\n");
-+                  expDiagLogU("all output. probably your program is not 
interactive or\r\n");
-+                  expDiagLogU("has a very long output line. The current limit 
is ");
-+                  expDiagLogU(buf);
-+                  expDiagLogU(".\r\n");
-+              }
-+              else {
-+                  cc = expReadNewLine(interp,esPtr,save_flags);
-+                  if (cc > 0)
-+                      count += cc;
-+              }
+       /* "!e" means no case matched - transfer by default */
+       if (!e || e->transfer) {
+-          int remainder = numchars-match;
++          int remainder;
++          if (match > numchars) {
++              match = numchars;
++              eo->matchlen = match;
 +          }
-+      }
-+    }
-     i_read_errno = errno;
- 
- #ifdef SIMPLE_EVENT
-@@ -1674,7 +1787,7 @@ int save_flags;
-       }
-     }
- #endif
--    return cc;        
-+    return count > 0 ? count : cc;
- }
- 
- /*
-@@ -2751,8 +2864,14 @@ char **argv;
-       return(TCL_ERROR);
-     }
- 
--    if (Default) exp_default_match_max = size;
--    else esPtr->umsize = size;
-+    if (Default) {
-+      exp_default_match_max = size;
-+      exp_default_match_max_changed = 1;
-+    }
-+    else {
-+      esPtr->umsize = size;
-+      esPtr->umsize_changed = 1;
-+    }
- 
-     return(TCL_OK);
++          remainder = numchars-match;
+           /* delete matched chars from input buffer */
+           esPtr->printed -= match;
+           if (numchars != 0) {
+--- expect5.45/exp_clib.c.orig 2013-07-15 08:54:50.000000000 -0400
++++ expect5.45/exp_clib.c      2013-07-15 08:55:35.000000000 -0400
+@@ -1476,8 +1476,8 @@
+      char *str;
+ {
+   if (exp_is_debugging) {
+-    fprintf(stderr,str);
+-    if (exp_logfile) fprintf(exp_logfile,str);
++    fprintf(stderr,"%s",str);
++    if (exp_logfile) fprintf(exp_logfile,"%s",str);
+   }
  }
-diff -up expect-5.43/Dbg.c.tcl8.5 expect-5.43/Dbg.c
---- expect-5.43/Dbg.c.tcl8.5   2002-03-23 05:11:54.000000000 +0100
-+++ expect-5.43/Dbg.c  2008-09-25 12:25:40.000000000 +0200
-@@ -10,6 +10,7 @@ would appreciate credit if this program 
- 
- #include <stdio.h>
  
-+#include "expect_cf.h"
- #include "tcldbgcf.h"
- #if 0
- /* tclInt.h drags in stdlib.  By claiming no-stdlib, force it to drag in */
-diff -up expect-5.43/exp_inter.c.tcl8.5 expect-5.43/exp_inter.c
---- expect-5.43/exp_inter.c.tcl8.5     2004-08-18 04:03:00.000000000 +0200
-+++ expect-5.43/exp_inter.c    2008-09-25 12:25:40.000000000 +0200
-@@ -36,6 +36,7 @@ would appreciate credit if this program 
- #include <ctype.h>
- 
- #include "tcl.h"
-+#include "tclInt.h"
- #include "string.h"
+--- expect5.45/pty_termios.c.orig      2013-07-15 08:56:10.000000000 -0400
++++ expect5.45/pty_termios.c   2013-07-15 08:56:40.000000000 -0400
+@@ -641,7 +641,7 @@
+       if (0 > (slave = open(slave_name, O_RDWR))) {
+               static char buf[500];
+               exp_pty_error = buf;
+-              sprintf(exp_pty_error,"open(%s,rw) = %d 
(%s)",slave_name,slave,expErrnoMsg(errno));
++              sprintf(exp_pty_error,"open(%s,rw) = %d 
(%d)",slave_name,slave,expErrnoMsg(errno));
+               return(-1);
+       }
  
- #include "exp_tty_in.h"


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Fink-commits mailing list
Fink-commits@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.cvs

Reply via email to