| … | |
… | |
| 271 | |
271 | |
| 272 | =cut |
272 | =cut |
| 273 | |
273 | |
| 274 | # SHARE variables and routines with safe compartment |
274 | # SHARE variables and routines with safe compartment |
| 275 | my %shared_subroutine_hash = ( |
275 | my %shared_subroutine_hash = ( |
| 276 | '&read_whole_problem_file' => 'PGtranslator', #the values are dummies. |
276 | #IO# '&read_whole_problem_file' => 'PGtranslator', #the values are dummies. |
| 277 | '&convertPath' => 'PGtranslator', # if they're dummies, why set them to |
277 | #IO# '&convertPath' => 'PGtranslator', # if they're dummies, why set them to |
| 278 | '&surePathToTmpFile' => 'PGtranslator', # something that seems meaningful, |
278 | #IO# '&surePathToTmpFile' => 'PGtranslator', # something that seems meaningful, |
| 279 | '&fileFromPath' => 'PGtranslator', # instead of '1' or something? |
279 | #IO# '&fileFromPath' => 'PGtranslator', # instead of '1' or something? |
| 280 | '&directoryFromPath' => 'PGtranslator', |
280 | #IO# '&directoryFromPath' => 'PGtranslator', |
| 281 | '&createFile' => 'PGtranslator', |
281 | #IO# '&createFile' => 'PGtranslator', |
| 282 | '&PG_answer_eval' => 'PGtranslator', |
282 | '&PG_answer_eval' => 'PGtranslator', |
| 283 | '&PG_restricted_eval' => 'PGtranslator', |
283 | '&PG_restricted_eval' => 'PGtranslator', |
| 284 | '&be_strict' => 'PGtranslator', |
284 | '&be_strict' => 'PGtranslator', |
| 285 | '&send_mail_to' => 'PGtranslator', |
285 | #IO# '&send_mail_to' => 'PGtranslator', |
| 286 | '&PGsort' => 'PGtranslator', |
286 | '&PGsort' => 'PGtranslator', |
| 287 | '&dumpvar' => 'PGtranslator', |
287 | '&dumpvar' => 'PGtranslator', |
| 288 | '&includePGtext' => 'PGtranslator', |
288 | #IO# '&includePGtext' => 'PGtranslator', |
| 289 | ); |
289 | ); |
| 290 | |
290 | |
| 291 | sub initialize { |
291 | sub initialize { |
| 292 | my $self = shift; |
292 | my $self = shift; |
| 293 | my $safe_cmpt = $self->{safe}; |
293 | my $safe_cmpt = $self->{safe}; |