diff options
Diffstat (limited to 'c/src')
-rw-r--r-- | c/src/librtems++/ChangeLog | 5 | ||||
-rw-r--r-- | c/src/librtems++/src/rtemsInterrupt.cc | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/c/src/librtems++/ChangeLog b/c/src/librtems++/ChangeLog index 77a82e8aed..ba73e26575 100644 --- a/c/src/librtems++/ChangeLog +++ b/c/src/librtems++/ChangeLog @@ -1,3 +1,8 @@ +2001-01-08 Joel Sherrill <joel@OARcorp.com> + + * src/rtemsInterrupt.cc: Allocated interrupt_table since since + cannot be determined without CPU model information. + 2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de> * Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS. diff --git a/c/src/librtems++/src/rtemsInterrupt.cc b/c/src/librtems++/src/rtemsInterrupt.cc index 4cd5d9afa9..923a9fd350 100644 --- a/c/src/librtems++/src/rtemsInterrupt.cc +++ b/c/src/librtems++/src/rtemsInterrupt.cc @@ -27,7 +27,7 @@ object */ -static rtemsInterrupt *interrupt_table[CPU_INTERRUPT_NUMBER_OF_VECTORS]; +static rtemsInterrupt **interrupt_table; // has the table been initialised static bool initialised = false; @@ -36,6 +36,8 @@ static bool initialised = false; rtemsInterrupt */ +#include <stdlib.h> /* for malloc */ + rtemsInterrupt::rtemsInterrupt() : vector(0), caught(false), @@ -44,6 +46,8 @@ rtemsInterrupt::rtemsInterrupt() { if (!initialised) { + interrupt_table = (rtemsInterrupt **) + malloc(sizeof(rtemsInterrupt *) * CPU_INTERRUPT_NUMBER_OF_VECTORS); for (rtems_vector_number vec = 0; vec < CPU_INTERRUPT_NUMBER_OF_VECTORS; vec++) |