Print can't find method and exit.
[cacao.git] / nat / SocketInputStream.c
1 /* class: java/net/SocketInputStream */
2
3 /*
4  * Class:     java/net/SocketInputStream
5  * Method:    init
6  * Signature: ()V
7  */
8 JNIEXPORT void JNICALL
9 Java_java_net_SocketInputStream_init (JNIEnv *env )
10 {
11     if (runverbose)
12         log_text("Java_java_net_SocketInputStream_initProto called");
13 }
14
15 /*
16  * Class:     java/net/SocketInputStream
17  * Method:    socketRead
18  * Signature: ([BII)I
19  */
20 JNIEXPORT s4 JNICALL
21 Java_java_net_SocketInputStream_socketRead (JNIEnv *env,  struct java_net_SocketInputStream* this, java_bytearray* buf, s4 offset, s4 len)
22 {
23         int r;
24
25         if (runverbose)
26             log_text("Java_java_net_SocketInputStream_socketRead called");
27     
28 #ifdef USE_THREADS
29         assert(blockInts == 0);
30 #endif
31
32         r = threadedRead(this->impl->fd->fd, &buf->data[offset], len);
33         if (r < 0) {
34                 exceptionptr = native_new_and_init (class_java_io_IOException);
35                 return 0;
36         }
37         else if (r == 0) {
38                 return (-1);    /* EOF */
39         }
40         else {
41                 return (r);
42         }
43
44 #ifdef USE_THREADS
45         assert(blockInts == 0);
46 #endif
47
48         return 0;
49 }