File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -4672,7 +4672,7 @@ procedure TPythonEngine.ExecFile(const FileName: string; locals,
46724672begin
46734673 SL := TStringList.Create;
46744674 try
4675- SL.LoadFromFile(FileName);
4675+ SL.LoadFromFile(FileName, TEncoding.UTF8 );
46764676 ExecStrings(SL, locals, globals, FileName);
46774677 finally
46784678 SL.Free;
@@ -5891,15 +5891,19 @@ procedure TPythonEngine.ListToSet( List : PPyObject; data : Pointer; size : Inte
58915891end ;
58925892
58935893procedure TPythonEngine.CheckError (ACatchStopEx : Boolean = False);
5894+
58945895 procedure ProcessSystemExit ;
58955896 var
58965897 errtype, errvalue, errtraceback: PPyObject;
58975898 SErrValue: string;
58985899 begin
5900+ // PyErr_Fetch clears the error. The returned python objects are new references
58995901 PyErr_Fetch(errtype, errvalue, errtraceback);
59005902 Traceback.Refresh(errtraceback);
59015903 SErrValue := PyObjectAsString(errvalue);
5902- PyErr_Clear;
5904+ Py_XDECREF(errtype);
5905+ Py_XDECREF(errvalue);
5906+ Py_XDECREF(errtraceback);
59035907 raise EPySystemExit.CreateResFmt(@SPyExcSystemError, [SErrValue]);
59045908 end ;
59055909
You can’t perform that action at this time.
0 commit comments