]> granicus.if.org Git - python/commitdiff
Backport fix of #1752175.
authorGeorg Brandl <georg@python.org>
Thu, 23 Aug 2007 18:08:33 +0000 (18:08 +0000)
committerGeorg Brandl <georg@python.org>
Thu, 23 Aug 2007 18:08:33 +0000 (18:08 +0000)
Python/ast.c
Python/import.c

index 2a27b646984de0593aecccc57a09c6d8c627014b..c96c5035425a14ff18cc96bcd263ac5f882a33c8 100644 (file)
@@ -3115,6 +3115,7 @@ decode_utf8(const char **sPtr, const char *end, char* encoding)
 #endif
 }
 
+#ifdef Py_USING_UNICODE
 static PyObject *
 decode_unicode(const char *s, size_t len, int rawmode, const char *encoding)
 {
@@ -3176,6 +3177,7 @@ decode_unicode(const char *s, size_t len, int rawmode, const char *encoding)
        Py_XDECREF(u);
        return v;
 }
+#endif
 
 /* s is a Python string literal, including the bracketing quote characters,
  * and r &/or u prefixes (if any), and embedded escape sequences (if any).
index b35dea19276c14266a89bcbf7132afd271f0b5f1..4311352c1f9d7c6fc73ed4048b3f9beeb2a6a3c9 100644 (file)
@@ -119,15 +119,19 @@ _PyImport_Init(void)
        /* prepare _PyImport_Filetab: copy entries from
           _PyImport_DynLoadFiletab and _PyImport_StandardFiletab.
         */
+#ifdef HAVE_DYNAMIC_LOADING
        for (scan = _PyImport_DynLoadFiletab; scan->suffix != NULL; ++scan)
                ++countD;
+#endif
        for (scan = _PyImport_StandardFiletab; scan->suffix != NULL; ++scan)
                ++countS;
        filetab = PyMem_NEW(struct filedescr, countD + countS + 1);
        if (filetab == NULL)
                Py_FatalError("Can't initialize import file table.");
+#ifdef HAVE_DYNAMIC_LOADING
        memcpy(filetab, _PyImport_DynLoadFiletab,
               countD * sizeof(struct filedescr));
+#endif
        memcpy(filetab + countD, _PyImport_StandardFiletab,
               countS * sizeof(struct filedescr));
        filetab[countD + countS].suffix = NULL;
@@ -1366,7 +1370,7 @@ find_module(char *fullname, char *subname, PyObject *path, char *buf,
                saved_namelen = namelen;
 #endif /* PYOS_OS2 */
                for (fdp = _PyImport_Filetab; fdp->suffix != NULL; fdp++) {
-#if defined(PYOS_OS2)
+#if defined(PYOS_OS2) && defined(HAVE_DYNAMIC_LOADING)
                        /* OS/2 limits DLLs to 8 character names (w/o
                           extension)
                         * so if the name is longer than that and its a