History log of /libcore/ojluni/src/main/java/java/io/FileInputStream.java
Revision Date Author Comments
d66fb8e8bb26b1d294a7c42d740acaf427a3a0a3 03-May-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Move clinit code to registration funtions

Moved clinit code that fetches field/method ids
to JNI registration funcitons. This will allow to
compile-time initialize these classes.

More classes will follow.

Bug: 28153851
Change-Id: I5918e281a65a2ca2168dfe1bdd18cc3c5df8f2f6
(cherry picked from commit 2798490baa8ee586e38bdd09707f4fb18ef0d023)
af991c428d8d59496d7d621e5543b1914e1e363f 13-Jan-2016 Narayan Kamath <narayan@google.com> Fix file descriptor leak in UNIXProcess#ProcessInputStream.

This was trigerred by a recent change to file des reference counting.

bug: 26515843
Change-Id: Iad512623454e5035eacffbd7cfd10ae4f1e5b5cc
b5738be1ca73734ab71a62b537e67bcbbf502f09 07-Jan-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Remove FileDescriptor reference counting usage.

openJdk uses reference counting for closing FileDescriptor
instances. pre-openJdk code assumes that the creator
of FileDescriptor instance is responsible for its removal.
In pre-openJdk libcore, streams created by File(Input|
Output)Stream(FileDescriptor) will not close
received FileDescriptor.

This change reverts the code to the pre-openJdk behavior. We
found that there's code in framework (and possible some
third-party apps) that assumes pre-openJdk behavior.

Bug: 26408757
Change-Id: Idfd289f77417ac0e014bfd8bb29ecfaeec6fc5ae
9bd6371468aac3ddaa7057127d5ef152aea1227d 06-Jan-2016 Narayan Kamath <narayan@google.com> Re-enable closeguard on a few classes that were missing it.

Change-Id: I49f580dbd02def75584a00edc849c2b3fbdb8aec
5873edf853a48362e8ee4e75181f654d0b88b8ef 07-Jan-2016 Narayan Kamath <narayan@google.com> Reinstate blockguard checks for file reads / writes.

Also adds a simple unit-test for file based checks.

bug: 25861497

Change-Id: I886321eae657af6531b21eb90c4749de7aec20d7
9c3a641e294abdaadda9299a2e1b49863de45ed9 06-Jan-2016 Narayan Kamath <narayan@google.com> File[Input,Output]Stream : Remove unused code.

Change-Id: I3cc1047ff1fa97403cf780e5a554182808070ba0
2c87ad3a45cecf9e344487cad1abfdebe79f2c7c 21-Dec-2015 Narayan Kamath <narayan@google.com> Update file headers.

Change-Id: I8149f41585768a1a4b72ab7bb4a1452376c05cc2
f9e3b5322e28686b1415f5737d600eae3a0dbb7f 16-Dec-2015 Yi Kong <yikong@google.com> Guard accesses to closed file streams

Check whether the file stream is closed before accessing the
underlying file descriptor.

Bug: 25897330
Change-Id: Ibb14bcd5530ee848c547dd3a0bc859cdb9b0391b
50164c3602af46021e434ff5047352299a36e0f0 16-Dec-2015 Yi Kong <yikong@google.com> Guard accesses to closed file streams

Check whether the file stream is closed before accessing the
underlying file descriptor.

Bug: 25897330
Change-Id: Ibb14bcd5530ee848c547dd3a0bc859cdb9b0391b
02df4b384e42969ad6f9e211989698e4f9fcde6e 28-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix File(Input|Output)Stream blocking IO+close().

Switched to use IoBridge#read and #write instead
of OpenJdk implementation. Switched to use
IoBridge#closeAndSignalBlockedThreads instead of
OpenJdk #close0.

This change fixes some libcore.java.nio.channels.
FileIOInterruptTest tests that depend on blocking
IO operation being interrupted by #close call
in another thread. OpenJdk lacks this behavior, hence
switch to the IoBridge equivalents (this is significantly
easier than trying to reproduce IoBridge behavior
in OpenJdk methods).

Change-Id: I02723d45672251acf566629149bd13fd7a28e83b
3100d8ee850cd06c215b50f5a37a8b157a4b50ca 02-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Typo, misisng "{"

Change-Id: I7efb2c904d3aa247dd0e21997a6e62a1a16d3469
34625fce1396e8639a650af8905a579f9cf659a2 02-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Fix FileInputStream#close with shared FD.

Change-Id: Id31c85df95b8c0c301f222d737f52b2aa3b9ba77
d86d266774c4d78e187426a0b26d281802712d58 02-Jul-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Make FileInputStream#seek work with pipes.

Fixes libcore.java.io.FileInputStreamTest#testSkipInPipes

Change-Id: I93e760bca7d5d2a27999f6e23fadd26a3984b73d
51b1b6997fd3f980076b8081f7f1165ccc2a4008 16-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and
src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes
directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to
libcore/ojluni/src/main/native:
jdk/src/solaris/native/java/io/canonicalize_md.c
build/linux-amd64/include/classfile_constants.h
jdk/src/share/native/java/net/DatagramPacket.c
jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c
jdk/src/share/native/java/lang/Double.c
jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h
jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c
jdk/src/solaris/native/java/io/FileDescriptor_md.c
jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
jdk/src/share/native/java/io/FileInputStream.c
jdk/src/solaris/native/sun/nio/ch/FileKey.c
jdk/src/solaris/native/java/io/FileOutputStream_md.c
jdk/src/solaris/native/java/io/FileSystem_md.c
jdk/src/share/native/java/lang/Float.c
jdk/src/share/native/java/net/Inet4Address.c
jdk/src/solaris/native/java/net/Inet4AddressImpl.c
jdk/src/share/native/java/net/Inet6Address.c
jdk/src/solaris/native/java/net/Inet6AddressImpl.c
jdk/src/share/native/java/net/InetAddress.c
jdk/src/solaris/native/java/net/InetAddressImplFactory.c
jdk/src/share/native/java/io/io_util.c
jdk/src/solaris/native/sun/nio/ch/IOUtil.c
jdk/src/share/native/java/io/io_util.h
jdk/src/solaris/native/java/io/io_util_md.c
jdk/src/solaris/native/java/io/io_util_md.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/java_io_FileDescriptor.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileInputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileOutputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_ObjectStreamClass.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_UnixFileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Double.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Float.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Integer.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Long.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Runtime.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Shutdown.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_StrictMath.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_String.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_System.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Thread.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Throwable.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_DatagramPacket.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddress.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddressImplFactory.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_NetworkInterface.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainDatagramSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketInputStream.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOptions.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOutputStream.h
jdk/src/share/native/java/lang/java_props.h
jdk/src/solaris/native/java/lang/java_props_md.c
jdk/src/share/native/java/util/zip/Adler32.c as java_util_zip_Adler32.c
jdk/src/share/native/java/util/zip/CRC32.c as java_util_zip_CRC32.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_CRC32.h
jdk/src/share/native/java/util/zip/Deflater.c as java_util_zip_Deflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Deflater.h
jdk/src/share/native/java/util/zip/Inflater.c as java_util_zip_Inflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Inflater.h
jdk/src/share/native/java/util/zip/ZipFile.c as java_util_zip_ZipFile.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_ZipFile.h
jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h
jdk/src/share/native/common/jlong.h
jdk/src/solaris/native/common/jlong_md.h
jdk/src/share/native/common/jni_util.c
jdk/src/share/native/common/jni_util.h
jdk/src/solaris/native/common/jni_util_md.c
jdk/src/share/javavm/export/jvm.h
jdk/src/solaris/javavm/export/jvm_md.h
jdk/src/solaris/native/java/net/linux_close.c
jdk/src/share/native/sun/misc/NativeSignalHandler.c
jdk/src/solaris/native/sun/nio/ch/NativeThread.c
jdk/src/share/native/java/net/net_util.c
jdk/src/share/native/java/net/net_util.h
jdk/src/solaris/native/java/net/net_util_md.c
jdk/src/solaris/native/java/net/net_util_md.h
jdk/src/solaris/native/java/net/NetworkInterface.c
jdk/src/share/native/sun/nio/ch/nio.h
jdk/src/solaris/native/sun/nio/ch/nio_util.h
jdk/src/share/native/java/io/ObjectStreamClass.c
jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
jdk/src/solaris/native/java/net/PlainSocketImpl.c
jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c
jdk/src/share/native/java/lang/Runtime.c
jdk/src/share/native/java/lang/Shutdown.c
jdk/src/share/native/sun/misc/Signal.c
jdk/src/solaris/native/java/net/SocketInputStream.c
jdk/src/solaris/native/java/net/SocketOutputStream.c
jdk/src/share/native/java/lang/StrictMath.c
jdk/src/share/native/java/lang/String.c
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_NativeSignalHandler.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_Signal.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/sun_net_spi_DefaultProxySelector.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileChannelImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileDispatcherImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileKey.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOStatus.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOUtil.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_NativeThread.h
jdk/src/share/native/java/lang/System.c
jdk/src/share/native/java/lang/Thread.c
jdk/src/share/native/java/lang/Throwable.c
jdk/src/solaris/native/java/io/UnixFileSystem_md.c
jdk/src/solaris/native/java/lang/UNIXProcess_md.c
jdk/src/share/native/java/util/zip/zip_util.c
jdk/src/share/native/java/util/zip/zip_util.h

Change-Id: Ib237df4e1b7b5b4d9f12e74d189e6ec9eed3c31d