summaryrefslogtreecommitdiffstats
path: root/src/image/script.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/image/script.c')
-rw-r--r--src/image/script.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/image/script.c b/src/image/script.c
index 9749b097..161ac682 100644
--- a/src/image/script.c
+++ b/src/image/script.c
@@ -148,9 +148,13 @@ static int script_exec ( struct image *image ) {
rc = process_script ( image, script_exec_line,
terminate_on_exit_or_failure );
- /* Restore saved state, re-register image, and return */
+ /* Restore saved state */
script_offset = saved_offset;
- register_image ( image );
+
+ /* Re-register image (unless we have been replaced) */
+ if ( ! image->replacement )
+ register_image ( image );
+
return rc;
}