… | |
… | |
1474 | } |
1474 | } |
1475 | |
1475 | |
1476 | sub emergency_save { |
1476 | sub emergency_save { |
1477 | my $freeze_guard = cf::freeze_mainloop; |
1477 | my $freeze_guard = cf::freeze_mainloop; |
1478 | |
1478 | |
1479 | warn "enter emergency map save\n"; |
1479 | warn "enter emergency perl save\n"; |
1480 | |
1480 | |
1481 | cf::sync_job { |
1481 | cf::sync_job { |
|
|
1482 | warn "begin emergency player save\n"; |
|
|
1483 | $_->save for values %cf::PLAYER; |
|
|
1484 | warn "end emergency player save\n"; |
|
|
1485 | |
1482 | warn "begin emergency map save\n"; |
1486 | warn "begin emergency map save\n"; |
1483 | $_->save for values %cf::MAP; |
1487 | $_->save for values %cf::MAP; |
|
|
1488 | warn "end emergency map save\n"; |
1484 | }; |
1489 | }; |
1485 | |
1490 | |
1486 | warn "end emergency map save\n"; |
1491 | warn "leave emergency perl save\n"; |
1487 | } |
1492 | } |
1488 | |
1493 | |
1489 | package cf; |
1494 | package cf; |
1490 | |
1495 | |
1491 | =back |
1496 | =back |
… | |
… | |
2167 | cf::load_extensions; |
2172 | cf::load_extensions; |
2168 | |
2173 | |
2169 | # reattach attachments to objects |
2174 | # reattach attachments to objects |
2170 | warn "reattach"; |
2175 | warn "reattach"; |
2171 | _global_reattach; |
2176 | _global_reattach; |
|
|
2177 | reattach $_ for values %MAP; |
2172 | }; |
2178 | }; |
2173 | |
2179 | |
2174 | if ($@) { |
2180 | if ($@) { |
2175 | warn $@; |
2181 | warn $@; |
2176 | warn "error while reloading, exiting."; |
2182 | warn "error while reloading, exiting."; |