Author: jghali
Date: Fri Aug 14 02:48:44 2020
New Revision: 23978

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=23978
Log:
#16210: Provide a way to get the current script path

Modified:
    trunk/Scribus/scribus/plugins/scriptplugin/scriptercore.cpp

Modified: trunk/Scribus/scribus/plugins/scriptplugin/scriptercore.cpp
URL: 
http://scribus.net/websvn/diff.php?repname=Scribus&rev=23978&path=/trunk/Scribus/scribus/plugins/scriptplugin/scriptercore.cpp
==============================================================================
--- trunk/Scribus/scribus/plugins/scriptplugin/scriptercore.cpp (original)
+++ trunk/Scribus/scribus/plugins/scriptplugin/scriptercore.cpp Fri Aug 14 
02:48:44 2020
@@ -286,6 +286,7 @@
        {
                // Path separators need to be escaped on Windows
                QString escapedAbsPath  = 
QDir::toNativeSeparators(fi.absolutePath()).replace("\\", "\\\\");
+               QString escapedAbsFilePath  = 
QDir::toNativeSeparators(fi.absoluteFilePath()).replace("\\", "\\\\");
                QString escapedFileName = 
QDir::toNativeSeparators(fileName).replace("\\", "\\\\");
                // FIXME: If filename contains chars outside 7bit ascii, might 
be problems
                PyObject* globals = PyModule_GetDict(m);
@@ -301,6 +302,8 @@
                // Replace sys.stdin with a dummy StringIO that always returns
                // "" for read
                cm        += QString("sys.stdin = io.StringIO()\n");
+               // Provide script path to the interpreter
+               cm        += QString("__file__ = 
\"%1\"\n").arg(escapedAbsFilePath);
                // tell the script if it's running in the main intepreter or a 
subinterpreter
                cm        += QString("import scribus\n");
                if (inMainInterpreter)


_______________________________________________
scribus-commit mailing list
[email protected]
http://lists.scribus.net/mailman/listinfo/scribus-commit

Reply via email to