diff options
author | Benjamin Peterson <benjamin@python.org> | 2010-06-27 21:48:35 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2010-06-27 21:48:35 (GMT) |
commit | 2ebf8ce488b64fb4a205e6b94de309d56cf387d2 (patch) | |
tree | b81882b10bf126161c328e0ac2f68f1228351106 /Demo/embed/demo.c | |
parent | 3e5cd1d04e8a39130752a1e888707a68a2943274 (diff) | |
download | cpython-2ebf8ce488b64fb4a205e6b94de309d56cf387d2.zip cpython-2ebf8ce488b64fb4a205e6b94de309d56cf387d2.tar.gz cpython-2ebf8ce488b64fb4a205e6b94de309d56cf387d2.tar.bz2 |
Merged revisions 81881-81882 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r81881 | andrew.kuchling | 2010-06-10 19:16:08 -0500 (Thu, 10 Jun 2010) | 1 line
#5753: update demo.c to use PySys_SetArgvEx(), and add a comment
........
r81882 | andrew.kuchling | 2010-06-10 19:23:01 -0500 (Thu, 10 Jun 2010) | 1 line
#5753: Suggest PySys_SetArgvEx() instead of PySys_SetArgv()
........
Diffstat (limited to 'Demo/embed/demo.c')
-rw-r--r-- | Demo/embed/demo.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/Demo/embed/demo.c b/Demo/embed/demo.c index 22bfaff..dc8bcf0 100644 --- a/Demo/embed/demo.c +++ b/Demo/embed/demo.c @@ -20,10 +20,19 @@ main(int argc, char **argv) Py_Initialize(); /* Define sys.argv. It is up to the application if you - want this; you can also let it undefined (since the Python + want this; you can also leave it undefined (since the Python code is generally not a main program it has no business - touching sys.argv...) */ - PySys_SetArgv(2, args); + touching sys.argv...) + + If the third argument is true, sys.path is modified to include + either the directory containing the script named by argv[0], or + the current working directory. This can be risky; if you run + an application embedding Python in a directory controlled by + someone else, attackers could put a Trojan-horse module in the + directory (say, a file named os.py) that your application would + then import and run. + */ + PySys_SetArgvEx(argc, argv, 0); /* Do some application specific code */ printf("Hello, brave new world\n\n"); |