Merge pull request #36 from cmaglie/fix-file-handle-leak

Fix for a "file handler" leak in native openPort method.
This commit is contained in:
Alexey Sokolov 2014-01-19 20:42:39 -08:00
commit 5a32b4b4ee
2 changed files with 2 additions and 0 deletions

View File

@ -72,6 +72,7 @@ JNIEXPORT jlong JNICALL Java_jssc_SerialNativeInterface_openPort(JNIEnv *env, jo
fcntl(hComm, F_SETFL, flags); fcntl(hComm, F_SETFL, flags);
} }
else { else {
close(hComm);
hComm = jssc_SerialNativeInterface_ERR_INCORRECT_SERIAL_PORT;//-4; hComm = jssc_SerialNativeInterface_ERR_INCORRECT_SERIAL_PORT;//-4;
} }
delete settings; delete settings;

View File

@ -57,6 +57,7 @@ JNIEXPORT jlong JNICALL Java_jssc_SerialNativeInterface_openPort(JNIEnv *env, jo
if(hComm != INVALID_HANDLE_VALUE){ if(hComm != INVALID_HANDLE_VALUE){
DCB *dcb = new DCB(); DCB *dcb = new DCB();
if(!GetCommState(hComm, dcb)){ if(!GetCommState(hComm, dcb)){
CloseHandle(hComm);
hComm = (HANDLE)jssc_SerialNativeInterface_ERR_INCORRECT_SERIAL_PORT;//(-4)Incorrect serial port hComm = (HANDLE)jssc_SerialNativeInterface_ERR_INCORRECT_SERIAL_PORT;//(-4)Incorrect serial port
} }
delete dcb; delete dcb;