diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 604447b..8f71ee5 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Jan 20
+*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Jan 21
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1596,4 +1596,7 @@
 In the quickfix buffer 'bufhidden' was set to "delete", which caused closing
 the quickfix window to leave an unlisted "No Name" buffer behind every time.
 
+Win32: when using two screens of different size, setting 'lines' to a large
+value didn't fill the whole screen. (SungHyun Nam)
+
  vim:tw=78:ts=8:ft=help:norl:
diff --git a/src/eval.c b/src/eval.c
index 737dfa6..e93182f 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -13579,8 +13579,10 @@
     typval_T	*argvars;
     typval_T	*rettv;
 {
+#ifdef FEAT_QUICKFIX
     char_u	*act;
     int		action = ' ';
+#endif
 
     rettv->vval.v_number = -1;
 
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index c8912ca..dff491a 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -2637,7 +2637,7 @@
 	if (!eap->forceit && !eap->append)
 	{
 #ifdef UNIX
-		/* with UNIX it is possible to open a directory */
+	    /* with UNIX it is possible to open a directory */
 	    if (mch_isdir(ffname))
 	    {
 		EMSG2(_(e_isadir2), ffname);
diff --git a/src/globals.h b/src/globals.h
index 6a46485..b41c9e0 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -1288,7 +1288,7 @@
 #endif
 EXTERN char_u e_invrange[]	INIT(= N_("E16: Invalid range"));
 EXTERN char_u e_invcmd[]	INIT(= N_("E476: Invalid command"));
-#if defined(UNIX) || (defined(FEAT_SYN_HL) && defined(FEAT_MBYTE))
+#if defined(UNIX) || defined(FEAT_SYN_HL)
 EXTERN char_u e_isadir2[]	INIT(= N_("E17: \"%s\" is a directory"));
 #endif
 #ifdef FEAT_LIBCALL
diff --git a/src/if_python.c b/src/if_python.c
index c1b3bf8..d0ce401 100644
--- a/src/if_python.c
+++ b/src/if_python.c
@@ -93,11 +93,13 @@
 # define PyInt_FromLong dll_PyInt_FromLong
 # define PyInt_Type (*dll_PyInt_Type)
 # define PyList_GetItem dll_PyList_GetItem
+# define PyList_Append dll_PyList_Append
 # define PyList_New dll_PyList_New
 # define PyList_SetItem dll_PyList_SetItem
 # define PyList_Size dll_PyList_Size
 # define PyList_Type (*dll_PyList_Type)
 # define PyImport_ImportModule dll_PyImport_ImportModule
+# define PyDict_New dll_PyDict_New
 # define PyDict_GetItemString dll_PyDict_GetItemString
 # define PyModule_GetDict dll_PyModule_GetDict
 # define PyRun_SimpleString dll_PyRun_SimpleString
@@ -149,11 +151,13 @@
 static PyObject*(*dll_PyInt_FromLong)(long);
 static PyTypeObject* dll_PyInt_Type;
 static PyObject*(*dll_PyList_GetItem)(PyObject *, int);
+static PyObject*(*dll_PyList_Append)(PyObject *, PyObject *);
 static PyObject*(*dll_PyList_New)(int size);
 static int(*dll_PyList_SetItem)(PyObject *, int, PyObject *);
 static int(*dll_PyList_Size)(PyObject *);
 static PyTypeObject* dll_PyList_Type;
 static PyObject*(*dll_PyImport_ImportModule)(const char *);
+static PyObject*(*dll_PyDict_New)(void);
 static PyObject*(*dll_PyDict_GetItemString)(PyObject *, const char *);
 static PyObject*(*dll_PyModule_GetDict)(PyObject *);
 static int(*dll_PyRun_SimpleString)(char *);
@@ -227,12 +231,14 @@
     {"PyInt_FromLong", (PYTHON_PROC*)&dll_PyInt_FromLong},
     {"PyInt_Type", (PYTHON_PROC*)&dll_PyInt_Type},
     {"PyList_GetItem", (PYTHON_PROC*)&dll_PyList_GetItem},
+    {"PyList_Append", (PYTHON_PROC*)&dll_PyList_Append},
     {"PyList_New", (PYTHON_PROC*)&dll_PyList_New},
     {"PyList_SetItem", (PYTHON_PROC*)&dll_PyList_SetItem},
     {"PyList_Size", (PYTHON_PROC*)&dll_PyList_Size},
     {"PyList_Type", (PYTHON_PROC*)&dll_PyList_Type},
     {"PyImport_ImportModule", (PYTHON_PROC*)&dll_PyImport_ImportModule},
     {"PyDict_GetItemString", (PYTHON_PROC*)&dll_PyDict_GetItemString},
+    {"PyDict_New", (PYTHON_PROC*)&dll_PyDict_New},
     {"PyModule_GetDict", (PYTHON_PROC*)&dll_PyModule_GetDict},
     {"PyRun_SimpleString", (PYTHON_PROC*)&dll_PyRun_SimpleString},
     {"PyString_AsString", (PYTHON_PROC*)&dll_PyString_AsString},
