Compare commits

..

No commits in common. "33963d70547f26c51758dc39a2112a3c07794565" and "0ec84bca99e1f30883ecc2e43b396b3c4ab5bf5a" have entirely different histories.

4 changed files with 3 additions and 6 deletions

View File

@ -107,7 +107,7 @@ PK_API void py_setvmctx(void* ctx);
/// Set `sys.argv`. Used for storing command-line arguments. /// Set `sys.argv`. Used for storing command-line arguments.
PK_API void py_sys_setargv(int argc, char** argv); PK_API void py_sys_setargv(int argc, char** argv);
/// Set the trace function for the current VM. /// Set the trace function for the current VM.
PK_API void py_sys_settrace(py_TraceFunc func, bool reset); PK_API void py_sys_settrace(py_TraceFunc func);
/// Setup the callbacks for the current VM. /// Setup the callbacks for the current VM.
PK_API py_Callbacks* py_callbacks(); PK_API py_Callbacks* py_callbacks();

View File

@ -1454,10 +1454,9 @@ static bool stack_format_object(VM* self, c11_sv spec) {
#undef INSERT_THIRD #undef INSERT_THIRD
#undef vectorcall_opcall #undef vectorcall_opcall
void py_sys_settrace(py_TraceFunc func, bool reset) { void py_sys_settrace(py_TraceFunc func) {
TraceInfo* info = &pk_current_vm->trace_info; TraceInfo* info = &pk_current_vm->trace_info;
info->func = func; info->func = func;
if(!reset) return;
if(info->prev_loc.src) { if(info->prev_loc.src) {
PK_DECREF(info->prev_loc.src); PK_DECREF(info->prev_loc.src);
info->prev_loc.src = NULL; info->prev_loc.src = NULL;

View File

@ -255,8 +255,6 @@ void VM__ctor(VM* self) {
} }
void VM__dtor(VM* self) { void VM__dtor(VM* self) {
// reset traceinfo
py_sys_settrace(NULL, true);
// destroy all objects // destroy all objects
ManagedHeap__dtor(&self->heap); ManagedHeap__dtor(&self->heap);
// clear frames // clear frames

View File

@ -95,7 +95,7 @@ int main(int argc, char** argv) {
py_initialize(); py_initialize();
py_sys_setargv(argc, argv); py_sys_setargv(argc, argv);
if(trace) py_sys_settrace(tracefunc, true); if(trace) py_sys_settrace(tracefunc);
if(filename == NULL) { if(filename == NULL) {
printf("pocketpy " PK_VERSION " (" __DATE__ ", " __TIME__ ") "); printf("pocketpy " PK_VERSION " (" __DATE__ ", " __TIME__ ") ");