jdk/src/share/native/java/io/io_util.c
changeset 8186 d0e2cc8b3073
parent 7668 d4a77089c587
child 9035 1255eb81cc2f
equal deleted inserted replaced
8184:526b9179a2bb 8186:d0e2cc8b3073
    42     FD fd = GET_FD(this, fid);
    42     FD fd = GET_FD(this, fid);
    43     if (fd == -1) {
    43     if (fd == -1) {
    44         JNU_ThrowIOException(env, "Stream Closed");
    44         JNU_ThrowIOException(env, "Stream Closed");
    45         return -1;
    45         return -1;
    46     }
    46     }
    47     nread = IO_Read(fd, &ret, 1);
    47     nread = (jint)IO_Read(fd, &ret, 1);
    48     if (nread == 0) { /* EOF */
    48     if (nread == 0) { /* EOF */
    49         return -1;
    49         return -1;
    50     } else if (nread == JVM_IO_ERR) { /* error */
    50     } else if (nread == JVM_IO_ERR) { /* error */
    51         JNU_ThrowIOExceptionWithLastError(env, "Read error");
    51         JNU_ThrowIOExceptionWithLastError(env, "Read error");
    52     } else if (nread == JVM_IO_INTR) {
    52     } else if (nread == JVM_IO_INTR) {
   106     fd = GET_FD(this, fid);
   106     fd = GET_FD(this, fid);
   107     if (fd == -1) {
   107     if (fd == -1) {
   108         JNU_ThrowIOException(env, "Stream Closed");
   108         JNU_ThrowIOException(env, "Stream Closed");
   109         nread = -1;
   109         nread = -1;
   110     } else {
   110     } else {
   111         nread = IO_Read(fd, buf, len);
   111         nread = (jint)IO_Read(fd, buf, len);
   112         if (nread > 0) {
   112         if (nread > 0) {
   113             (*env)->SetByteArrayRegion(env, bytes, off, nread, (jbyte *)buf);
   113             (*env)->SetByteArrayRegion(env, bytes, off, nread, (jbyte *)buf);
   114         } else if (nread == JVM_IO_ERR) {
   114         } else if (nread == JVM_IO_ERR) {
   115             JNU_ThrowIOExceptionWithLastError(env, "Read error");
   115             JNU_ThrowIOExceptionWithLastError(env, "Read error");
   116         } else if (nread == JVM_IO_INTR) {
   116         } else if (nread == JVM_IO_INTR) {
   135     if (fd == -1) {
   135     if (fd == -1) {
   136         JNU_ThrowIOException(env, "Stream Closed");
   136         JNU_ThrowIOException(env, "Stream Closed");
   137         return;
   137         return;
   138     }
   138     }
   139     if (append == JNI_TRUE) {
   139     if (append == JNI_TRUE) {
   140         n = IO_Append(fd, &c, 1);
   140         n = (jint)IO_Append(fd, &c, 1);
   141     } else {
   141     } else {
   142         n = IO_Write(fd, &c, 1);
   142         n = (jint)IO_Write(fd, &c, 1);
   143     }
   143     }
   144     if (n == JVM_IO_ERR) {
   144     if (n == JVM_IO_ERR) {
   145         JNU_ThrowIOExceptionWithLastError(env, "Write error");
   145         JNU_ThrowIOExceptionWithLastError(env, "Write error");
   146     } else if (n == JVM_IO_INTR) {
   146     } else if (n == JVM_IO_INTR) {
   147         JNU_ThrowByName(env, "java/io/InterruptedIOException", NULL);
   147         JNU_ThrowByName(env, "java/io/InterruptedIOException", NULL);
   188             if (fd == -1) {
   188             if (fd == -1) {
   189                 JNU_ThrowIOException(env, "Stream Closed");
   189                 JNU_ThrowIOException(env, "Stream Closed");
   190                 break;
   190                 break;
   191             }
   191             }
   192             if (append == JNI_TRUE) {
   192             if (append == JNI_TRUE) {
   193                 n = IO_Append(fd, buf+off, len);
   193                 n = (jint)IO_Append(fd, buf+off, len);
   194             } else {
   194             } else {
   195                 n = IO_Write(fd, buf+off, len);
   195                 n = (jint)IO_Write(fd, buf+off, len);
   196             }
   196             }
   197             if (n == JVM_IO_ERR) {
   197             if (n == JVM_IO_ERR) {
   198                 JNU_ThrowIOExceptionWithLastError(env, "Write error");
   198                 JNU_ThrowIOExceptionWithLastError(env, "Write error");
   199                 break;
   199                 break;
   200             } else if (n == JVM_IO_INTR) {
   200             } else if (n == JVM_IO_INTR) {