equal
deleted
inserted
replaced
476 if (SetEndOfFile(h) == FALSE) return -1; |
476 if (SetEndOfFile(h) == FALSE) return -1; |
477 return 0; |
477 return 0; |
478 } |
478 } |
479 |
479 |
480 JNIEXPORT |
480 JNIEXPORT |
481 size_t |
481 jint |
482 handleRead(jlong fd, void *buf, jint len) |
482 handleRead(jlong fd, void *buf, jint len) |
483 { |
483 { |
484 DWORD read = 0; |
484 DWORD read = 0; |
485 BOOL result = 0; |
485 BOOL result = 0; |
486 HANDLE h = (HANDLE)fd; |
486 HANDLE h = (HANDLE)fd; |
497 if (error == ERROR_BROKEN_PIPE) { |
497 if (error == ERROR_BROKEN_PIPE) { |
498 return 0; /* EOF */ |
498 return 0; /* EOF */ |
499 } |
499 } |
500 return -1; |
500 return -1; |
501 } |
501 } |
502 return read; |
502 return (jint)read; |
503 } |
503 } |
504 |
504 |
505 static size_t writeInternal(jlong fd, const void *buf, jint len, jboolean append) |
505 static jint writeInternal(jlong fd, const void *buf, jint len, jboolean append) |
506 { |
506 { |
507 BOOL result = 0; |
507 BOOL result = 0; |
508 DWORD written = 0; |
508 DWORD written = 0; |
509 HANDLE h = (HANDLE)fd; |
509 HANDLE h = (HANDLE)fd; |
510 if (h != INVALID_HANDLE_VALUE) { |
510 if (h != INVALID_HANDLE_VALUE) { |
525 lpOv); /* overlapped struct */ |
525 lpOv); /* overlapped struct */ |
526 } |
526 } |
527 if ((h == INVALID_HANDLE_VALUE) || (result == 0)) { |
527 if ((h == INVALID_HANDLE_VALUE) || (result == 0)) { |
528 return -1; |
528 return -1; |
529 } |
529 } |
530 return (size_t)written; |
530 return (jint)written; |
531 } |
531 } |
532 |
532 |
533 JNIEXPORT |
533 JNIEXPORT |
534 size_t handleWrite(jlong fd, const void *buf, jint len) { |
534 jint handleWrite(jlong fd, const void *buf, jint len) { |
535 return writeInternal(fd, buf, len, JNI_FALSE); |
535 return writeInternal(fd, buf, len, JNI_FALSE); |
536 } |
536 } |
537 |
537 |
538 JNIEXPORT |
538 JNIEXPORT |
539 size_t handleAppend(jlong fd, const void *buf, jint len) { |
539 jint handleAppend(jlong fd, const void *buf, jint len) { |
540 return writeInternal(fd, buf, len, JNI_TRUE); |
540 return writeInternal(fd, buf, len, JNI_TRUE); |
541 } |
541 } |
542 |
542 |
543 jint |
543 jint |
544 handleClose(JNIEnv *env, jobject this, jfieldID fid) |
544 handleClose(JNIEnv *env, jobject this, jfieldID fid) |