| 62 | struct Snapshot g_snapshot; |
| 63 | |
| 64 | void takeSnapshot(TTD::Cursor* cursor, TTD::Cursor* cursor2) { |
| 65 | g_snapshot.func_stack = g_func_stack; // This is a copy |
| 66 | g_snapshot.ret_stack = g_ret_stack; |
| 67 | g_snapshot.func_stack2 = g_func_stack2; |
| 68 | g_snapshot.ret_stack2 = g_ret_stack2; |
| 69 | memcpy(&g_snapshot.cur, cursor->GetPosition(), sizeof(TTD::Position)); |
| 70 | memcpy(&g_snapshot.cur2, cursor2->GetPosition(), sizeof(TTD::Position)); |
| 71 | } |
| 72 | |
| 73 | void restoreSnapshot(TTD::Cursor* cursor, TTD::Cursor* cursor2) { |
| 74 | cursor->SetPosition(&g_snapshot.cur); |