Commit Graph

607 Commits

Author SHA1 Message Date
1b31fb67e1 Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2010-06-15 18:27:51 -06:00
47d9039b69 switch from gethostbyname to getaddrinfo on POSIX systems
gethostbyname may return any combination of IPv4 and IPv6 addresses,
and it's not safe to assume the first address is IPv4, which is all
our code is currently prepared to handle.  In contrast, getaddrinfo
allows us to specify whether we want IPv4, IPv6, or both.

We should eventually make this switch on Windows as well, but the
status of getaddrinfo in Windows 2000 is not clear, and MinGW's
ws2tcpip.h only declares it for XP and above.

This commit also adds InetAddress.getByName for explicit DNS lookups.
2010-06-14 16:09:56 -06:00
b908f575d5 fix several blocking SocketChannel bugs
In java-nio.cpp, we can't use GetPrimitiveArrayCritical when reading
from or writing to blocking sockets since it may block the rest of the
VM indefinitely.

In SelectableChannel.java, we can't use a null test on
SelectableChannel.key to determine whether the channel is open since
it might never be registered with a Selector.  According to the Sun
documentation, a SelectableChannel is open as soon as it's created, so
that's what we now implement.
2010-06-04 15:37:22 -06:00
a6998238d5 Additional of several interfaces which can be used in serialization 2010-05-10 10:17:06 -06:00
JET
b6936fb597 optimized InputStreamReader.read() 2010-04-14 09:43:56 -06:00
JET
b2f5e71d22 ARM and UTF-8 work 2010-04-14 09:26:50 -06:00
a650f1affa provide more useful message when throwing exception from Field.set 2010-03-07 12:03:17 -07:00
5d781a0584 declare Long.MAX_VALUE and Long.MIN_VALUE as longs, not Longs 2010-02-02 09:33:10 -07:00
2c4e229e6e convert forward slashes to back slashes in Windows paths 2010-01-11 08:31:01 -07:00
585dba004b ignore redundant calls to File{In|Out}putStream.close
Previously, we threw an IOException, which did not match Sun's behavior.
2010-01-09 18:22:16 -07:00
9a056da2f7 increase default buffer size in BufferedInputStream
The previous value of 32 bytes did not perform well.  This increases it to 4096 bytes, which matches BufferedOutputStream.
2010-01-09 18:20:15 -07:00
f588a62ae3 fix Classpath 0.98 compatibility issues 2009-12-22 21:34:04 -07:00
70da0df46b add Class.getExceptionTypes method 2009-12-15 10:04:51 -07:00
112e2a71d5 update copyright years 2009-12-05 15:50:23 -07:00
99a1c12682 Files to add Deflater and DeflaterOutputStream to java.util.zip for
avian
2009-12-04 12:01:31 -07:00
6118792ffd update copyright years 2009-12-02 19:08:29 -07:00
f39469e71c Changes for better memory managment 2009-12-01 09:54:36 -07:00
6475beda83 don't null out array in HashMap when size drops to zero
As in ArrayList, we want to avoid thrashing in cases where the map is frequently emptied and refilled.
2009-11-19 12:55:53 -07:00
adcac443e4 don't null out array in ArrayList when size goes to zero
This avoids thrashing in the case of a list which is frequently
emptied and refilled with a small number of elements.
2009-11-19 11:43:11 -07:00
3862128a3a tolerate EINTR in ServerSocketChannel.accept implementation
On POSIX systems, Avian sends a special signal to a thread to
implement Thread.getStackTrace() when called from a different thread.
If the target thread is blocked on a call to accept when this happens,
it will return -1, with errno set to EINTR.  Instead of treating this
as an error, we now just loop and call accept again.
2009-11-16 17:23:09 -07:00
ef00ff80ef avoid EAGAIN or EWOULDBLOCK errors due to SocketSelector.wakup being called many times between calls to select 2009-10-30 08:55:55 -06:00
efdfb796d9 implement SocketChannel.isConnected 2009-10-29 16:19:33 -06:00
2efff818ea Merge commit 'origin/master' into wip 2009-10-27 09:17:54 -06:00
a68742200b return empty stack trace for thread which isn't running 2009-10-26 11:44:29 -06:00
5967246b37 Merge commit 'origin/master' into wip 2009-10-20 14:15:35 -06:00
53588b94f3 compare lengths first in String.equals[IgnoreCase] for efficiency 2009-10-19 10:36:48 -06:00
59ba4aecf2 implement non-blocking socket connections 2009-10-08 16:26:20 -06:00
447741d6ec implement java.io.File.renameTo 2009-09-28 17:45:47 -06:00
fb40b046fd fix regression in SocketSelector when selecting ServerSocketChannels 2009-09-28 16:54:49 -06:00
1faf93c163 fix typo in Proxy.makeInvokeCode 2009-09-19 16:27:28 -06:00
953cb69e5e move proxy and annotation code from C++ to Java
This allows code shrinkers to remove it if it's not used by the application.
2009-09-19 16:21:15 -06:00
1a2eb3836c Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-09-18 18:01:57 -06:00
7aa906d97b support runtime-visible annotations and java.lang.reflect.Proxy 2009-09-18 18:01:54 -06:00
6fa25f992c Properties.setProperty should return an Object 2009-09-18 17:51:05 -06:00
0a96f4c552 ensure WeakHashMap.MyCell objects are registered with the ReferenceQueue 2009-09-01 17:22:31 -06:00
987330fed5 Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-08-28 16:18:36 -06:00
cd41751912 ensure primitive names are zero-terminated in Class.getName 2009-08-28 16:17:23 -06:00
73dc058c14 implement StackTraceElement.getFileName properly 2009-08-27 16:28:44 -06:00
d4e2e05b31 add AccessControlException 2009-08-24 16:40:25 -06:00
77ae259e41 throw ClassCastException if asked to compare Enums of different types 2009-08-21 16:06:12 -06:00
4c14a9ab66 implement enough of java.util.regex to ensure String methods work for trivial regular expressions 2009-08-20 11:14:05 -06:00
71f1efc4cb add a couple of StringBuffer.append overloads 2009-08-20 08:59:22 -06:00
c4b5ecec90 implement Runtime.addShutdownHook and Thread.setDaemon; avoid segfaults due to an application calling e.g. CallStaticBooleanMethod when it really meant CallStaticVoidMethod 2009-08-19 14:27:03 -06:00
c4edabdc02 implement ClassLoader.resolveClass and ensure class is linked in e.g. Class.getMethods; minor bugfixes 2009-08-18 14:26:28 -06:00
6d54b6cec8 add classes which I meant to add in earlier commits 2009-08-14 08:51:10 -06:00
9553d56977 add AccessibleObject.setAccessible(AccessibleObject[],boolean) 2009-08-13 09:03:44 -06:00
f96fa82607 add methods to Throwable 2009-08-13 09:03:04 -06:00
017116d060 add ThreadGroup(String) constructor 2009-08-13 09:02:32 -06:00
0d7a2fa2bc add methods to StringBuilder and fix logic error in getChars 2009-08-13 09:02:00 -06:00
ae02212dd9 add a few methods to String; support ISO-8859-1 charset 2009-08-13 09:00:07 -06:00