diff options
| author | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-12-02 01:48:07 +0000 |
|---|---|---|
| committer | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-12-02 01:48:07 +0000 |
| commit | 61dfbd2589b32a9bb97ca4905bf971cc2f08fae7 (patch) | |
| tree | 2e4c4b4e8f75b83b8c4d1bef20b8cda7cc178fc1 /libjava | |
| parent | ec0eee8d72e0f6316654dd512b6e911c47cc1b39 (diff) | |
| download | ppe42-gcc-61dfbd2589b32a9bb97ca4905bf971cc2f08fae7.tar.gz ppe42-gcc-61dfbd2589b32a9bb97ca4905bf971cc2f08fae7.zip | |
From Adam Welc <welc@cs.purdue.edu>:
* java/util/LinkedList.java (removeFirst): Update `first' field.
Handle the last == first case.
(removeLast): Update `last' field. Handle the last == first case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37940 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
| -rw-r--r-- | libjava/ChangeLog | 5 | ||||
| -rw-r--r-- | libjava/java/util/LinkedList.java | 12 |
2 files changed, 16 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index d5b0c5b119e..3a1b79477bf 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -5,6 +5,11 @@ * java/lang/dtoa.c: Include string.h. * java/lang/natString.cc (toLowerCase): Initialize `ch' to prevent compiler warning. + + From Adam Welc <welc@cs.purdue.edu>: + * java/util/LinkedList.java (removeFirst): Update `first' field. + Handle the last == first case. + (removeLast): Update `last' field. Handle the last == first case. 2000-12-01 Warren Levy <warrenl@cygnus.com> diff --git a/libjava/java/util/LinkedList.java b/libjava/java/util/LinkedList.java index 22219294479..e3ce52587ea 100644 --- a/libjava/java/util/LinkedList.java +++ b/libjava/java/util/LinkedList.java @@ -183,6 +183,11 @@ public class LinkedList extends AbstractSequentialList if (first.next != null) first.next.previous = null; + else + last = null; + + first = first.next; + return r; } @@ -195,7 +200,12 @@ public class LinkedList extends AbstractSequentialList Object r = last.data; if (last.previous != null) - last.previous.next = null; + last.previous.next = null; + else + first = null; + + last = last.previous; + return r; } |

