[Commit] nickle file.c,1.48,1.49 lex.l,1.67,1.68 mem.h,1.10,1.11 sched.c,1.46,1.47 value.h,1.83,1.84

Keith Packard commit@keithp.com
Thu, 29 May 2003 11:36:37 -0700


Committed by: keithp

Update of /local/src/CVS/nickle
In directory home.keithp.com:/tmp/cvs-serv22790

Modified Files:
	file.c lex.l mem.h sched.c value.h 
Log Message:
Standard exception arguments were constructed backwards.  Was attempting to use strerror; needed custom to handle EUTF8

Index: file.c
===================================================================
RCS file: /local/src/CVS/nickle/file.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -d -r1.48 -r1.49
--- file.c	29 May 2003 07:47:33 -0000	1.48
+++ file.c	29 May 2003 18:36:35 -0000	1.49
@@ -482,6 +482,16 @@
     RETURN (ret);
 }
 
+char *
+FileGetErrorMessage (int err)
+{
+    int i;
+    for (i = 0; i < NUM_FILE_ERRORS; i++)
+	if (fileErrorMap[i].value == err)
+	    return fileErrorMap[i].message;
+    return "Unknown error";
+}
+
 static void
 FileMark (void *object)
 {

Index: lex.l
===================================================================
RCS file: /local/src/CVS/nickle/lex.l,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -d -r1.67 -r1.68
--- lex.l	2 Nov 2002 21:34:50 -0000	1.67
+++ lex.l	29 May 2003 18:36:35 -0000	1.68
@@ -132,7 +132,7 @@
     if (f == 0) {
 	if (complain)
 	    (void) FilePrintf (FileStderr, "%s: %s\n",
-			       s, strerror (err));
+			       s, FileGetErrorMessage (err));
 	return False;
     }
     (void) NewLexInput(f, AtomId (s), after, False);

Index: mem.h
===================================================================
RCS file: /local/src/CVS/nickle/mem.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- mem.h	22 Apr 2003 23:25:38 -0000	1.10
+++ mem.h	29 May 2003 18:36:35 -0000	1.11
@@ -138,8 +138,8 @@
     if (!new)
 	new = MemHunkMore (sizeIndex);
     freeList[sizeIndex] = new->next;
-    if (sizeIndex >= 6)
-	memset (new, '\0', size);
+/*    if (sizeIndex >= 6)
+	memset (new, '\0', size); */
     new->type = type;
     return (void *) new;
 }

Index: sched.c
===================================================================
RCS file: /local/src/CVS/nickle/sched.c,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- sched.c	5 Dec 2002 17:40:41 -0000	1.46
+++ sched.c	29 May 2003 18:36:35 -0000	1.47
@@ -1062,10 +1062,10 @@
     va_start (va, argc);
     i = argc + 1;
     args = NewArray (False, typePoly, 1, &i);
-    BoxValueSet (args->array.values, argc, NewStrString (string));
+    BoxValueSet (args->array.values, 0, NewStrString (string));
     if (argc)
 	for (i = 0; i < argc; i++)
-	    BoxValueSet (args->array.values, (argc - 1) - i, va_arg (va, Value));
+	    BoxValueSet (args->array.values, i + 1, va_arg (va, Value));
     standardException = se;
     standardExceptionArgs = args;
     SetSignalException ();

Index: value.h
===================================================================
RCS file: /local/src/CVS/nickle/value.h,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -d -r1.83 -r1.84
--- value.h	2 May 2003 00:23:38 -0000	1.83
+++ value.h	29 May 2003 18:36:35 -0000	1.84
@@ -876,6 +876,7 @@
 # define False(v)	((v) != TrueVal)
 
 Value	FileGetError (int err);
+char	*FileGetErrorMessage (int err);
 int	FileInput (Value);
 int	FileOutput (Value, char);
 void	FileUnput (Value, unsigned char);