Index: ChangeLog
===================================================================
RCS file: /home/wine/wine/ChangeLog,v
retrieving revision 1.98
diff -p -u -r1.98 ChangeLog
--- ChangeLog	30 Sep 2005 12:02:38 -0000	1.98
+++ ChangeLog	14 Oct 2005 13:26:19 -0000
@@ -1,4 +1,12 @@
-----------------------------------------------------------------
+2005-10-14  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+	* programs/notepad/main.c (HandleCommandLine): Bugfix: Do not eat
+	first character of file name argument if no quoted executable name
+	is present.  This happens on Windows XP.
+
+	* programs/notepad/dialog.c (DoSaveFile): Allow files to get
+	shorter: call SetEndOfFile (reported by Heikki Junes).`
+
 2005-09-30  Alexandre Julliard  <julliard@winehq.com>
 
 	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
Index: programs/notepad/dialog.c
===================================================================
RCS file: /home/wine/wine/programs/notepad/dialog.c,v
retrieving revision 1.30
diff -p -u -r1.30 dialog.c
--- programs/notepad/dialog.c	7 May 2005 12:14:05 -0000	1.30
+++ programs/notepad/dialog.c	14 Oct 2005 13:26:27 -0000
@@ -165,6 +165,7 @@ static VOID DoSaveFile(VOID)
     else
         SendMessage(Globals.hEdit, EM_SETMODIFY, FALSE, 0);
 
+    SetEndOfFile(hFile);
     CloseHandle(hFile);
     HeapFree(GetProcessHeap(), 0, pTemp);
 }
Index: programs/notepad/main.c
===================================================================
RCS file: /home/wine/wine/programs/notepad/main.c,v
retrieving revision 1.35
diff -p -u -r1.35 main.c
--- programs/notepad/main.c	20 Sep 2005 12:02:45 -0000	1.35
+++ programs/notepad/main.c	14 Oct 2005 13:26:27 -0000
@@ -238,11 +238,10 @@ static void HandleCommandLine(LPWSTR cmd
     /* skip executable name */
     delimiter = (*cmdline == '"' ? '"' : ' ');
 
-    do
-    {
-        cmdline++;
-    }
-    while (*cmdline && *cmdline != delimiter);
+    if (*cmdline == delimiter) cmdline++;
+
+    while (*cmdline && *cmdline != delimiter) cmdline++;
+
     if (*cmdline == delimiter) cmdline++;
 
     while (*cmdline == ' ' || *cmdline == '-' || *cmdline == '/')

