From aaa4cecd22c8b49f9b0d36fdf48fc1c1ba8f2e44 Mon Sep 17 00:00:00 2001 From: Bryce McKinlay Date: Sat, 2 Dec 2000 01:48:07 +0000 Subject: [PATCH] From Adam Welc : * java/util/LinkedList.java (removeFirst): Update `first' field. Handle the last == first case. (removeLast): Update `last' field. Handle the last == first case. From-SVN: r37940 --- libjava/ChangeLog | 5 +++++ libjava/java/util/LinkedList.java | 12 +++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index d5b0c5b119ee..3a1b79477bf6 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 : + * 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 diff --git a/libjava/java/util/LinkedList.java b/libjava/java/util/LinkedList.java index 222192944795..e3ce52587ea2 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; }