@@ -296,10 +296,10 @@ void sysvar_getcwd(var_t *r) {
296296 */
297297void exec_setup_predefined_variables () {
298298 char homedir [OS_PATHNAME_SIZE + 1 ];
299+ homedir [0 ] = '\0' ;
299300
300301 // needed here (otherwise task will not updated)
301302 ctask -> has_sysvars = 1 ;
302-
303303 setsysvar_str (SYSVAR_SBVER , SB_STR_VER );
304304 setsysvar_num (SYSVAR_PI , SB_PI );
305305 setsysvar_int (SYSVAR_TRUE , 1 );
@@ -323,7 +323,6 @@ void exec_setup_predefined_variables() {
323323 homedir [l ] = OS_DIRSEP ;
324324 homedir [l + 1 ] = '\0' ;
325325 }
326- setsysvar_str (SYSVAR_HOME , homedir );
327326#elif defined(_Win32 )
328327 if (dev_getenv ("HOME" )) {
329328 // this works on cygwin
@@ -334,7 +333,6 @@ void exec_setup_predefined_variables() {
334333 char * p = strrchr (homedir , '\\' );
335334 * p = '\0' ;
336335 strcat (homedir , "\\" );
337-
338336 if (OS_DIRSEP == '/' ) {
339337 p = homedir ;
340338 while (* p ) {
@@ -344,18 +342,8 @@ void exec_setup_predefined_variables() {
344342 }
345343 }
346344 }
347- setsysvar_str (SYSVAR_HOME , homedir ); // mingw32
348-
349- {
350- static char stupid_os_envsblog [1024 ]; // it must be static at
351- // least by default on DOS
352- // or Win32(BCB)
353- sprintf (stupid_os_envsblog , "SBLOG=%s%csb.log" , homedir , OS_DIRSEP );
354- putenv (stupid_os_envsblog );
355- }
356- #else
357- setsysvar_str (SYSVAR_HOME , "" );
358345#endif
346+ setsysvar_str (SYSVAR_HOME , homedir );
359347}
360348
361349/**
@@ -536,7 +524,7 @@ static inline void bc_loop_call_proc() {
536524 pcode_t pcode = code_getaddr ();
537525 switch (pcode ) {
538526 case kwCLS :
539- graph_reset ();
527+ dev_cls ();
540528 break ;
541529 case kwTHROW :
542530 cmd_throw ();
@@ -1721,6 +1709,7 @@ void sbasic_exec_prepare(const char *filename) {
17211709 }
17221710 // reset system
17231711 cmd_play_reset ();
1712+ graph_reset ();
17241713}
17251714
17261715/*
0 commit comments