cvs: TSRM / tsrm_virtual_cwd.c
| From: | Andi Gutmans | Date: | Wed, 29 Oct 2003 21:33:06 +0000 |
| Subject: | cvs: TSRM / tsrm_virtual_cwd.c | ||
| Groups: | php.zend-engine.cvs | ||
| Request: | Send a blank email to php-zend-engine-cvs+get-1950@lists.php.net to get a copy of this message | ||
andi Wed Oct 29 16:33:06 2003 EDT
Modified files:
/TSRM tsrm_virtual_cwd.c
Log:
- This should work.
Index: TSRM/tsrm_virtual_cwd.c
diff -u TSRM/tsrm_virtual_cwd.c:1.52 TSRM/tsrm_virtual_cwd.c:1.53
--- TSRM/tsrm_virtual_cwd.c:1.52 Wed Oct 29 16:14:17 2003
+++ TSRM/tsrm_virtual_cwd.c Wed Oct 29 16:33:05 2003
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: tsrm_virtual_cwd.c,v 1.52 2003/10/29 21:14:17 andi Exp $ */
+/* $Id: tsrm_virtual_cwd.c,v 1.53 2003/10/29 21:33:05 andi Exp $ */
#include <sys/types.h>
#include <sys/stat.h>
@@ -338,14 +338,19 @@
char *new_path;
int new_path_length;
- new_path_length = GetFullPathName(path, 0, 0, &dummy) + 1;
+ new_path_length = GetLongPathName(path, dummy, 0) + 1;
+ if (new_path_length == 0) {
+ return 1;
+ }
new_path = (char *) malloc(new_path_length);
if (!new_path) {
return 1;
}
- GetFullPathName(path, new_path_length, new_path, &dummy);
- free(path);
+ if (GetLongPathName(path, new_path, new_path_length) == 0) {
+ free(new_path);
+ return 1;
+ }
path = new_path;
path_length = new_path_length;
}