From 51c4d72d436769dab2edbbc7b4685912546e8d47 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Tue, 22 Oct 2013 10:22:29 +0200 Subject: Issue #18603: Ensure that PyOS_mystricmp and PyOS_mystrnicmp are in the Python executable and not removed by the linker's optimizer. --- Misc/NEWS | 3 +++ Python/pythonrun.c | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index e9d692c..80a1a23 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -9,6 +9,9 @@ What's New in Python 2.7.6? Core and Builtins ----------------- +- Issue #18603: Ensure that PyOS_mystricmp and PyOS_mystrnicmp are in the + Python executable and not removed by the linker's optimizer. + - Issue #19279: UTF-7 decoder no more produces illegal unicode strings. - Issue #18739: Fix an inconsistency between math.log(n) and math.log(long(n)); diff --git a/Python/pythonrun.c b/Python/pythonrun.c index a2e1e74..2a40c0b 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -91,6 +91,11 @@ int _Py_QnewFlag = 0; int Py_NoUserSiteDirectory = 0; /* for -s and site.py */ int Py_HashRandomizationFlag = 0; /* for -R and PYTHONHASHSEED */ + +/* Hack to force loading of object files */ +int (*_PyOS_mystrnicmp_hack)(const char *, const char *, Py_ssize_t) = \ + PyOS_mystrnicmp; /* Python/pystrcmp.o */ + /* PyModule_GetWarningsModule is no longer necessary as of 2.6 since _warnings is builtin. This API should not be used. */ PyObject * -- cgit v0.12