[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r116624: Fix bug #16751 with crashes in expand-file-
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] trunk r116624: Fix bug #16751 with crashes in expand-file-name on Windows. |
Date: |
Sat, 01 Mar 2014 11:51:50 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 116624
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/16751
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Sat 2014-03-01 13:51:02 +0200
message:
Fix bug #16751 with crashes in expand-file-name on Windows.
src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Don't treat file names
that start with more than 2 slashes as UNCs.
modified:
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/fileio.c fileio.c-20091113204419-o5vbwnq5f7feedwu-210
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2014-02-28 21:45:34 +0000
+++ b/src/ChangeLog 2014-03-01 11:51:02 +0000
@@ -1,3 +1,8 @@
+2014-03-01 Eli Zaretskii <address@hidden>
+
+ * fileio.c (Fexpand_file_name) [WINDOWSNT]: Don't treat file names
+ that start with more than 2 slashes as UNCs. (Bug#16751)
+
2014-02-28 Paul Eggert <address@hidden>
Fix a few crashes and leaks when cloning C strings.
=== modified file 'src/fileio.c'
--- a/src/fileio.c 2014-01-29 13:21:25 +0000
+++ b/src/fileio.c 2014-03-01 11:51:02 +0000
@@ -1047,10 +1047,9 @@
nm++;
/* Discard any previous drive specifier if nm is now in UNC format. */
- if (IS_DIRECTORY_SEP (nm[0]) && IS_DIRECTORY_SEP (nm[1]))
- {
- drive = 0;
- }
+ if (IS_DIRECTORY_SEP (nm[0]) && IS_DIRECTORY_SEP (nm[1])
+ && !IS_DIRECTORY_SEP (nm[2]))
+ drive = 0;
#endif /* WINDOWSNT */
#endif /* DOS_NT */
@@ -1261,7 +1260,8 @@
&& !IS_DIRECTORY_SEP (nm[0])
#endif
#ifdef WINDOWSNT
- && !(IS_DIRECTORY_SEP (nm[0]) && IS_DIRECTORY_SEP (nm[1]))
+ && !(IS_DIRECTORY_SEP (nm[0]) && IS_DIRECTORY_SEP (nm[1])
+ && !IS_DIRECTORY_SEP (nm[2]))
#endif
&& !newdir)
{
@@ -1286,7 +1286,8 @@
&& IS_DEVICE_SEP (newdir[1]) && IS_DIRECTORY_SEP (newdir[2]))
#ifdef WINDOWSNT
/* Detect Windows file names in UNC format. */
- && ! (IS_DIRECTORY_SEP (newdir[0]) && IS_DIRECTORY_SEP (newdir[1]))
+ && ! (IS_DIRECTORY_SEP (newdir[0]) && IS_DIRECTORY_SEP (newdir[1])
+ && !IS_DIRECTORY_SEP (newdir[2]))
#endif
)
{
@@ -1346,7 +1347,8 @@
if (IS_DIRECTORY_SEP (nm[0]) && collapse_newdir)
{
#ifdef WINDOWSNT
- if (IS_DIRECTORY_SEP (newdir[0]) && IS_DIRECTORY_SEP (newdir[1]))
+ if (IS_DIRECTORY_SEP (newdir[0]) && IS_DIRECTORY_SEP (newdir[1])
+ && !IS_DIRECTORY_SEP (newdir[2]))
{
char *adir = strcpy (alloca (strlen (newdir) + 1), newdir);
char *p = adir + 2;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r116624: Fix bug #16751 with crashes in expand-file-name on Windows.,
Eli Zaretskii <=