dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/engine lib_dir.c,1.11,1.12


From: Gopal.V <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/engine lib_dir.c,1.11,1.12
Date: Sun, 15 Dec 2002 08:22:39 -0500

Update of /cvsroot/dotgnu-pnet/pnet/engine
In directory subversions:/tmp/cvs-serv25554/engine

Modified Files:
        lib_dir.c 
Log Message:
Patch #823 for PathInfo.InvalidChars


Index: lib_dir.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/engine/lib_dir.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -r1.11 -r1.12
*** lib_dir.c   1 Dec 2002 09:56:03 -0000       1.11
--- lib_dir.c   15 Dec 2002 13:22:36 -0000      1.12
***************
*** 55,58 ****
--- 55,91 ----
  {
        Platform_PathInfo *info = (Platform_PathInfo *)result;
+       System_Array *charArray;
+       ILUInt16 *invalidPathCharsBuf;
+ 
+       /* Allocate the "invalidPathChars" array */
+ #if defined(_WIN32) || defined(WIN32)
+       charArray = (System_Array *)ILExecThreadNew(thread, "[c", "(Ti)V", 
+                                                                               
                        (ILVaInt)6);
+ #else
+       charArray = (System_Array *)ILExecThreadNew(thread, "[c", "(Ti)V", 
+                                                                               
                        (ILVaInt)2);
+ #endif
+ 
+       if(!charArray)
+       {
+               /* Bail out if out of memory */
+               ILExecThreadThrowOutOfMemory(thread);
+               return;
+       }
+       info->invalidPathChars = (ILObject *)charArray;
+ 
+       /* Fill the "invalidPathChars" array with the invalid characters */
+       invalidPathCharsBuf = (ILUInt16 *)(ArrayToBuffer(charArray));
+ 
+ #if defined(_WIN32) || defined(WIN32)
+       /* ... write the 16-bit characters to buf ... */
+       *(invalidPathCharsBuf++) = '\"';
+       *(invalidPathCharsBuf++) = '<';
+       *(invalidPathCharsBuf++) = '>';
+       *(invalidPathCharsBuf++) = '|';
+ #endif
+       *(invalidPathCharsBuf++) = '\0';
+       *(invalidPathCharsBuf++) = '\n';
+ 
  #if defined(_WIN32) || defined(WIN32)
        info->dirSeparator = '\\';
***************
*** 60,64 ****
        info->volumeSeparator = ':';
        info->pathSeparator = ';';
-       info->invalidPathChars = 0;
  #else
        info->dirSeparator = '/';
--- 93,96 ----
***************
*** 66,70 ****
        info->volumeSeparator = 0;
        info->pathSeparator = ':';
-       info->invalidPathChars = 0;
  #endif
  }
--- 98,101 ----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]