/usr/src/gcc-4.7/debian/patches/libjava-armel-unwind.diff is in gcc-4.7-source 4.7.4-3ubuntu12.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | # DP: On armel, apply kludge to fix unwinder infinitely looping 'til it runs out
# DP: of memory (http://gcc.gnu.org/ml/java/2008-06/msg00010.html).
---
libjava/stacktrace.cc | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
--- a/src/libjava/stacktrace.cc
+++ b/src/libjava/stacktrace.cc
@@ -115,6 +115,9 @@ _Jv_StackTrace::UnwindTraceFn (struct _Unwind_Context *context, void *state_ptr)
// Check if the trace buffer needs to be extended.
if (pos == state->length)
{
+ // http://gcc.gnu.org/ml/java/2008-06/msg00010.html
+ return _URC_END_OF_STACK;
+
int newLength = state->length * 2;
void *newFrames = _Jv_AllocBytes (newLength * sizeof(_Jv_StackFrame));
memcpy (newFrames, state->frames, state->length * sizeof(_Jv_StackFrame));
|