2007-07-31 Dalibor Topic <robilad@kaffe.org>
PR 32844
* java/util/EnumSet.java:
Made class abstract per API spec.
(size, iterator, add, addAll, clear, contains,
containsAll, remove, removeAll, retainAll) Moved
into an anonymous inner class in of(T).
(allOf, noneOf, copyOf, of, range) Made more
implementation independent.
(of(T)) return an instance of an anonymous class
implementing EmptySet.
From-SVN: r127291
2007-04-04 Tania Bento <tbento@redhat.com>
* java/text/DecimalFormatSymbols.java: Added the year 2007 to
Copyright information and introduced new variable, currency.
(DecimalFormatSymbols(Locale)): Define currency and intlCurrencySymbol
to "XXX", currencySymbol to "?" and localCurrency appropriately.
(getCurrency): Fixed documentation and return the value of currency.
(setCurrency): Fixed documentation and update the value of currency.
(setInternationalCurrencySymbol): Fixed documentation and update the
value of currency.
* java/util/Currency.java: Introduced two new variables, properties
and fractionDigits. In the static block, a properties object is
created and the currency resource is loaded.
(Currency(Locale)): fractionDigits is defined.
(Currency(String)): New method.
(getDefaultFractionDigits): Return the value of fractionDigits.
(getInstance(String)): Check if String is equal to "XXX".
From-SVN: r123512
libjava/
PR libgcj/17002
PR classpath/28550
* java/util/VMTimeZone.java (getDefaultTimeZoneId): To read
/etc/localtime, use ZoneInfo.readTZFile instead of
VMTimeZone.readtzFile. Get better timezone name for /etc/localtime,
either if it is a symlink or through /etc/sysconfig/clock.
(readSysconfigClockFile): New static method.
(readtzFile): Removed.
* java/lang/System.java: Add gnu.java.util.zoneinfo.dir to comments.
* posix.cc (_Jv_platform_initProperties): Set
gnu.java.util.zoneinfo.dir.
* sources.am (gnu_java_util_source_files): Add
classpath/gnu/java/util/ZoneInfo.java.
* Makefile.in: Regenerated.
* java/util/VMTimeZone.h: Regenerated.
* java/util/TimeZone.h: Regenerated.
* gnu/java/util/ZoneInfo.h: Generated.
libjava/classpath/
* java/util/Date.java (parse): Properly parse 09:01:02 as
hours/minutes/seconds, not as hours/minutes/year.
* java/util/SimpleTimeZone.java (SimpleTimeZone): Simplify
{start,end}TimeMode constructor by calling shorter constructor,
set {start,end}TimeMode fields after it returns.
(setStartRule): Don't adjust startTime into WALL_TIME. Set
startTimeMode to WALL_TIME.
(endStartRule): Similarly.
(getOffset): Handle properly millis + dstOffset overflowing into the
next day. Adjust startTime resp. endTime based on startTimeMode
resp. endTimeMode.
* java/util/TimeZone.java (zoneinfo_dir, availableIDs, aliases0): New
static fields.
(timezones): Remove synchronized keyword. Set zoneinfo_dir.
If non-null, set up aliases0 and don't put anything into
timezones0.
(defaultZone): Call getTimeZone instead of timezones().get.
(getDefaultTimeZone): Fix parsing of EST5 or EST5EDT6. Use
getTimeZoneInternal instead of timezones().get.
(parseTime): Parse correctly hour:minute.
(getTimeZoneInternal): New private method.
(getTimeZone): Do the custom ID checking first, canonicalize
ID for custom IDs as required by documentation. Call
getTimeZoneInternal to handle the rest.
(getAvailableIDs(int)): Add locking. Handle zoneinfo_dir != null.
(getAvailableIDs(File,String,ArrayList)): New private method.
(getAvailableIDs()): Add locking. Handle zoneinfo_dir != null.
* gnu/java/util/ZoneInfo.java: New file.
From-SVN: r122229
2007-02-09 Jakub Jelinek <jakub@redhat.com>
* java/util/VMTimeZone.java: Rewrite to handle both the old
'TZif\0' format and the new one.
From-SVN: r121845
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=201712
* java/util/Locale.java (hashcode): No longer transient.
(writeObject): Use ObjectOutputStream.PutField and
defaultWriteObject.
(readObject): Use defaultReadObject.
From-SVN: r117248
2006-09-19 Mark Wielaard <mark@klomp.org>
Fixes bug #29137
* java/util/logging/LogManager.java (addLogger): Always check for
existing children of a new Logger.
2006-09-19 Tom Tromey <tromey@redhat.com>
* java/util/logging/LogManager.java: Re-merged with Classpath.
From-SVN: r117058
2005-05-09 David Daney <ddaney@avtrex.com>
* java/util/BitSet.java (get(int, int)): Fix breakage when
requested set doesn't start on a multiple of 64.
From-SVN: r99492
* java/util/Locale.java
(defaultLocale): Use gnu.classpath.SystemProperties to get properties.
(getLocale): New methods. Use it everywhere where instances of Locales
are needed.
(getDisplayLanguage): Merged javadoc.
(getDisplayCountry): Likewise.
(getDisplayVariant): Likewise.
From-SVN: r99303
2005-04-22 Sven de Marothy <sven@physto.se>
* java/util/logging/LogManager.java: Reformatted.
(readConfiguration): If a logger for a key is not found, create one.
From-SVN: r98543
2005-04-06 Bryce McKinlay <mckinlay@redhat.com>
* java/util/logging/natLogger.cc (getCallerStackFrame): Don't crash
on NULL klass and meth values from _Jv_StackTrace::GetCallerInfo().
From-SVN: r97739
2005-03-23 Sven de Marothy <sven@physto.se>
PR libgcj/2641, PR libgcj/9854, PR libgcj/14892, PR libgcj/18083,
PR libgcj/11085:
* java/util/Calendar.java
(set): Use starting day of week when one is needed if none is given.
* java/text/SimpleDateFormat.java
(parse): Handle 1-12 and 1-24 timestamps correctly.
* java/util/GregorianCalendar.java
(computeTime, computeFields): HOUR should be in 0-11 format.
(nonLeniencyCheck): Adjust leniency checking to that fact.
(getLinearDay): Should be private.
From-SVN: r96951
2005-03-10 Bryce McKinlay <mckinlay@redhat.com>
New Stack Trace infrastructure.
* Makefile.am (libgcj0_convenience_la_SOURCES): Add stacktrace.cc.
(gnu/gcj/runtime/StackTrace.lo): Removed.
(ordinary_java_source_files): Remove obsolete files.
(nat_source_files): Remove obsolete files. Add natVMThrowable.cc.
* configure.host (fallback_backtrace_h): Set backtrace header
for mingw and cygwin targets.
* configure.ac: Make symlink for fallback backtrace headers.
* Makefile.in, configure: Rebuilt.
* defineclass.cc (_Jv_ClassReader::read_one_code_attribute):
Read 'LineNumberTable' attribute.
(_Jv_ClassReader::read_one_class_attribute): Read 'SourceFile'
attribute.
(_Jv_ClassReader::handleCodeAttribute): Initialize method line
table fields.
* exception.cc: Remove unused include.
* interpret.cc (DIRECT_THREADED, insn_slot): Moved to java-interp.h.
(SAVE_PC): New macro. Save current PC in the interpreter frame.
(NULLCHECK, NULLARRAYCHECK): Use SAVE_PC.
(_Jv_InterpMethod::compile): Translate bytecode PC values in the line
table to direct threaded instruction values.
(_Jv_StartOfInterpreter, _Jv_EndOfInterpreter): Removed.
(_Jv_InterpMethod::run): No longer member function. All
callers updated. Remove _Unwind calls. Call SAVE_PC whenever a call
is made or where an instruction could throw.
(_Jv_InterpMethod::get_source_line): New. Look up source line numbers
in line_table.
* prims.cc (catch_segv): Construct exception after MAKE_THROW_FRAME.
(catch_fpe): Likewise.
* stacktrace.cc: New file. Stack trace code now here.
* gnu/gcj/runtime/MethodRef.java:
* gnu/gcj/runtime/NameFinder.java: Mostly reimplemented. Now simply
calls addr2line to look up PC addresses in a given binary or shared
library.
* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
gnu/gcj/runtime/natStackTrace.cc: Removed.
* gnu/java/lang/MainThread.java (call_main): Add comment warning that
this function name is specially recognised by the stack trace code
and shouldn't be changed.
* include/java-interp.h (DIRECT_THREADED, insn_slot): Moved here.
(struct _Jv_LineTableEntry, line_table, line_table_len): New.
(_Jv_InterpMethod::run): Update declaration.
(_Jv_StackTrace_): New friend. NameFinder and StackTrace no longer
friends.
(_Jv_InterpFrame): Renamed from _Jv_MethodChain. Add PC field.
* include/java-stack.h: New file. Declarations for stack tracing.
* include/jvm.h (_Jv_Frame_info): Removed.
* java/lang/Class.h: Update friend declarations.
* java/lang/VMClassLoader.java (getSystemClassLoader): Simplify
exception message.
* java/lang/VMThrowable.java (fillInStackTrace): Now native.
(getStackTrace): Now native.
(data): New RawDataManaged field.
* java/lang/natClass.cc: Update includes.
(forName): Use _Jv_StackTrace::GetCallingClass for
calling-classloader check.
(getClassLoader): Likewise.
* java/lang/natRuntime.cc: Update includes.
(_load): Use _Jv_StackTrace::GetFirstNonSystemClassLoader.
* java/lang/natVMSecurityManager.cc: Update includes.
(getClassContext): Use _Jv_StackTrace::GetClassContext.
* java/lang/natVMThrowable.cc: New file. Native methods for
VMThrowable.
* java/lang/reflect/natArray.cc: Update includes.
(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natConstructor.cc: Update includes.
(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natField.cc: Update includes.
(getAddr): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natMethod.cc: Update includes.
(invoke): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/util/natResourceBundle.cc: Update includes.
(getCallingClassLoader): Use _Jv_StackTrace::GetCallingClass.
* java/util/logging/natLogger.cc: Update includes. Use
_Jv_StackTrace::GetCallerInfo to get call-site info.
* sysdep/generic/backtrace.h: Fallback backtrace code. Stub
implementation.
* sysdep/i386/backtrace.h: New. Fallback backtrace code. i386
implementation.
From-SVN: r96253
2005-02-21 Mark Wielaard <mark@klomp.org>
* gnu/java/locale/LocaleInformation_en.java: Extend
localPatternChars to "GyMdkHmsSEDFwWahKzYeugAZ".
2005-02-21 Mark Wielaard <mark@klomp.org>
* java/text/SimpleDateFormat.java
(SimpleDateFormat(String, DateFormatSymbols)): Throw
NullPointerException when formatData is null.
2005-02-21 Mark Wielaard <mark@klomp.org>
* java/util/SimpleTimeZone.java (getOffset): Calculate beforeEnd by
taking dstSavings into account.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/text/SimpleDateFormat.java,
(parse): Set correct DST_OFFSET to the correct value.
2005-02-21 Mark Wielaard <mark@klomp.org>
* java/util/SimpleTimeZone.java (checkRule): Throw
IllegalArgumentException when month out of range.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/GregorianCalendar.java,
(add): Don't set fields directly anymore. Use set()
2005-02-21 Mark Wielaard <mark@klomp.org>
* java/text/SimpleDateFormat.java (CompiledField.toString):
Use StringBuffer, not StringBuilder.
(toString): Likewise.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java
(clear): Dates should clear to local time.
* java/util/GregorianCalendar.java
(computeTime): Fix priority problem with DAY_OF_WEEK,
Handle non-sunday-startig weeks and minimumDaysInFirstWeek.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java
(Calendar): Constructor should clear fields.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/text/SimpleDateFormat.java
(parse): Tweak handling of 2-year dates
* java/util/Calendar.java
(clear): Clear fields to correct value.
* java/util/GregorianCalendar.java
(computeTime): Correct handling of time zones.
Correct field minimum values.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java
(set) Invalidate all fields on first call to set().
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/GregorianCalendar.java
(computeTime): Fixed handling of time zones.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java
(clear): Set values to Epoch instead of zero.
(set): Set isSet to the relevant field pattern instead of just
the field.
* java/util/GregorianCalendar.java
(getBundle): Removed.
(getDayOfYear): Removed.
(getFirstDayOfMonth): New private method.
(nonLeniencyCheck): New private method.
(computeTime): Correct handling of insufficient data.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java: Invalidate ERA field on setting
the YEAR.
* java/util/SimpleTimeZone.java:
(getDaysInMonth): Reimplemented.
* java/util/GregorianCalendar.java:
(getLinearTime): Removed.
(isLeapYear(int,boolean)): Removed.
(before(), after()): Removed.
(computeTime): Reimplemented.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/Calendar.java: Reformatted.
* java/util/GregorianCalendar.java: Reformatted.
* java/util/SimpleTimeZone.java: Reformatted.
2005-02-21 Sven de Marothy <sven@physto.se>
* java/util/GregorianCalendar.java
(GregorianCalendar): Update fields in the constructor
2005-02-21 Noa Resare <noa@resare.com>
* java/util/Calendar.java (explicitDSTOffset): New instance field.
(set(int,int)): Set and use new field.
(set(int,int,int)): Check new field.
2005-02-21 Noa Resare <address@hidden>
* java/util/Calendar.java(set):
Fix for DST related regression.
2005-02-21 Jeroen Frijters <jeroen@frijters.net>
* java/util/Calendar.java
(setTimeInMillis): Added call to clear, removed computeFields call.
* java/util/Date.java
(Date(int,int,int,int,int,int)): Removed workaround for
GregorianCalendar bug.
* java/util/GregorianCalendar.java
(GregorianCalendar): Chained all constructors to a (new)
common constructor.
(computeTime): Fixed support for lenient month treatment.
(getLinearDay): Return long instead of int.
(calculateDay): Added fields argument and changed day argument
to long.
2005-02-21 Andrew John Hughes <gnu_andrew@member.fsf.org>
* java/text/SimpleDateFormat.java
Lots of documentation updates.
(readObject(java.io.ObjectInputStream)): Wraps
IllegalArgumentException as specified.
(compileFormat(String)): Uses standardChars
rather than the local pattern characters.
Throws IllegalArgumentException rather than
storing a -1 field.
(toString()): Extended to include all variables
in a better format.
(translateLocalizedPattern(String, String, String)):
Renamed to better define the use of this method.
2005-02-21 Andrew John Hughes <gnu_andrew@member.fsf.org>
* java/text/DateFormat.java:
Documented pattern character offset constants and
added new ones.
(Field): Added new static fields for new pattern chars.
* java/text/SimpleDateFormat.java:
(CompiledField): Changed name of FieldSizePair class
to CompiledField after adding the character as an
attribute. Changed fields to private and added
accessors to give encapsulation.
(CompiledField.CompiledField(int,int,char)): Extended
with character field.
(CompiledField.getField()): New accessor method.
(CompiledField.getSize()): New acceessor method.
(CompiledField.getCharacter()): New accessor method.
(CompiledField.toString()): Added primarily for debugging.
(standardChars): Now uses extended 24 character sequence.
(compileFormat(String)): Changed to use CompiledField.
(formatWithAttribute(java.util.Date, gnu.java.text.FormatBuffer,
java.text.FieldPosition)): Changed to use CompiledField.
New handler for RFC 822 timezones added.
2005-02-21 Andrew John Hughes <gnu_andrew@member.fsf.org>
* java/text/SimpleDateFormat.java:
(parse(String, java.text.ParsePosition)):
Changed 'E' and 'M' cases to use both
short and long names. Extended 'z'
case to also handle 'Z', and deal
with simple GMT offsets such as +0100.
(computeOffset(String)): New private method,
which converts a GMT offset specification,
such as GMT-0500 to a numeric offset in
milliseconds.
* java/util/TimeZone.java:
(timezones()): Added "CEST", the daylight
savings time version of "CET", or Central
European Time.
2005-02-21 Ito Kazumitsu <kaz@maczuka.gcd.org>
* java/text/SimpleDateFormat.java:
(parse): Set the DST offset to 0 when parsing
GMT offset timezones.
2005-02-21 Ito Kazumitsu <kaz@maczuka.gcd.org>
* java/text/SimpleDateFormat.java:
(parse): Use offset to set ZONE_OFFSET
rather than the DST_OFFSET, so that
GMT offset timezones change the right
one.
2005-02-21 Andrew John Hughes <gnu_andrew@member.fsf.org>
* java/text/SimpleDateFormat.java:
(getDateFormatSymbols()): return a copy
(setDateFormatSymbols(java.text.DateFormatSymbols)):
throw exception on null input
(clone()): implemented to clone
internal fields
2005-02-21 Sven de Marothy <sven@physto.se>
* java/text/SimpleDateFormat.java
(parse): comparison should be case-insensitive, ignore null
strings.
From-SVN: r95368
2005-02-18 Bryce McKinlay <mckinlay@redhat.com>
* java/util/LinkedHashMap (addEntry): Call remove() with key argument,
not the HashEntry. Reported by Jean-Marie White.
From-SVN: r95263
2005-02-16 Mark Wielaard <mark@klomp.org>
* Makefile.am (ordinary_java_source_files): Add new files
gnu/java/security/ber/BER.java,
gnu/java/security/ber/BEREncodingException.java,
gnu/java/security/ber/BERReader.java,
gnu/java/security/ber/BERValue.java,
gnu/java/security/pkcs/PKCS7SignedData.java and
gnu/java/security/pkcs/SignerInfo.java.
* Makefile.in: Regenerated.
2005-02-16 Casey Marshall <csm@gnu.org>
* gnu/java/security/provider/GnuDSAPrivateKey.java
(encodedKey): new field.
(getFormat): return "PKCS#8".
(getEncoded): implemented.
(toString): check for 'null' values.
* gnu/java/security/provider/GnuDSAPublicKey.java
(encodedKey): new field.
(getFormat): return "X.509".
(getEncoded): implemented.
(toString): check for 'null' values.
2005-02-16 Michael Koch <konqueror@gmx.de>
* java/util/jar/JarFile.java: Imports reworked.
2005-02-16 Mark Wielaard <mark@klomp.org>
* java/util/jar/JarFile.java (verify): Make package private.
(signaturesRead): Likewise.
(verified): Likewise.
(entryCerts): Likewise.
(DEBUG): Likewise.
(debug): Likewise.
(entries): Construct new JarEnumeration with reference to this.
(JarEnumeration): Make static.
(JarEnumeration.jarfile): New field.
(JarEnumeration.nextElement): Use and synchronize on jarfile.
Compare verified value to Boolean.TRUE or Boolean.False only
when verify is true.
(getEntry): Make synchronized. Compare value of verified to
Boolean.TRUE.
(getInputStream): Construct EntryInputStream with reference to this.
(getManifest): Make synchronized.
(EntryInputStream): Make static.
(EntryInputStream.jarfile): New field.
(EntryInputStream.EntryInputStream): Check if manifest exists,
before getting attributes.
(eof): Synchronize on jarfile.
2005-02-16 Casey Marshall <csm@gnu.org>
* java/util/jar/JarFile.java (verify): return if the jar is signed
with an unsupported algorithm.
2005-02-16 Mark Wielaard <mark@klomp.org>
* java/util/jar/JarFile.java (EntryInputStream): Add actual
InputStream as argument.
(getInputStream): Construct a new EntryInputStream with the result of
super.getInputStream(entry).
2005-02-16 Casey Marshall <csm@gnu.org>
Signed JAR file support.
* java/net/URLClassLoader.java
(JarURLResource.getCertificates): re-read jar entry to ensure
certificates are picked up.
(findClass): fill in class `signers' field, too.
* java/util/jar/JarFile.java (META_INF): new constant.
(PKCS7_DSA_SUFFIX): new constant.
(PKCS7_RSA_SUFFIX): new constant.
(DIGEST_KEY_SUFFIX): new constant.
(SF_SUFFIX): new constant.
(MD2_OID): new constant.
(MD4_OID): new constant.
(MD5_OID): new constant.
(SHA1_OID): new constant.
(DSA_ENCRYPTION_OID): new constant.
(RSA_ENCRYPTION_OID): new constant.
(signaturesRead): new field.
(verified): new field.
(entryCerts): new field.
(DEBUG): new constant.
(debug): new method.
(JarEnumeration.nextElement): fill in entry certificates, read
signatures if they haven't been read.
(getEntry): likewise.
(getInputStream): verify stream if it hasn't been verified yet.
(readSignatures): new method.
(verify): new method.
(verifyHashes): new method.
(readManifestEntry): new method.
(EntryInputStream): new class.
* gnu/java/io/Base64InputStream.java (decode): new class
method.
* gnu/java/security/der/DERReader.java don't make class
final.
(in): made protected.
(encBuf): likewise.
(readLength): likewise.
* gnu/java/security/ber/BER.java,
* gnu/java/security/ber/BEREncodingException.java,
* gnu/java/security/ber/BERReader.java,
* gnu/java/security/ber/BERValue.java,
* gnu/java/security/pkcs/PKCS7SignedData.java,
* gnu/java/security/pkcs/SignerInfo.java:
new files.
From-SVN: r95124
2005-02-15 Mark Wielaard <mark@klomp.org>
* java/util/jar/Attributes.java (Name.CLASS_PATH): Document that
file path elements are separated by spaces.
2005-02-15 Mark Wielaard <mark@klomp.org>
* java/util/jar/Attributes.java (Attributes.Name): Add documentation
to describe attributes without a constant field value in this class.
2005-02-15 Michael Koch <konqueror@gmx.de>
* java/util/jar/Attributes.java
(CREATED_BY, JAVA_BEAN, MAGIC): Removed.
From-SVN: r95078
* gnu/java/net/protocol/jar/Connection.java (getJarFile): Open
jar file with OPEN_DELETE.
* java/util/zip/ZipFile.java (ZipFile): Call deleteOnExit when
OPEN_DELETE is used.
From-SVN: r94793