summaryrefslogtreecommitdiffstats
path: root/ldid.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ldid.cpp')
-rw-r--r--ldid.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/ldid.cpp b/ldid.cpp
index 874e7f5..caf6bc1 100644
--- a/ldid.cpp
+++ b/ldid.cpp
@@ -1119,10 +1119,11 @@ void resign(void *idata, size_t isize, std::streambuf &output, const Functor<siz
pad(output, allocation.limit_ - allocation.size_);
position += allocation.limit_ - allocation.size_;
- position += save(output, allocation.limit_, overlap, top);
- if (allocation.alloc_ > position)
- pad(output, allocation.alloc_ - position);
+ size_t saved(save(output, allocation.limit_, overlap, top));
+ if (allocation.alloc_ > saved)
+ pad(output, allocation.alloc_ - saved);
+ position += allocation.alloc_;
}
}