diff options
-rw-r--r-- | rmidevice/hiddevice.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/rmidevice/hiddevice.cpp b/rmidevice/hiddevice.cpp index 3d80a3a..f6ccd58 100644 --- a/rmidevice/hiddevice.cpp +++ b/rmidevice/hiddevice.cpp @@ -537,7 +537,7 @@ bool WriteDeviceNameToFile(const char * file, const char * str) return false; for (;;) { - size = write(fd, str, 19); + size = write(fd, str, strlen(str)); if (size < 0) { if (errno == EINTR) continue; @@ -546,9 +546,8 @@ bool WriteDeviceNameToFile(const char * file, const char * str) } break; } - close(fd); - return true; + return close(fd) == 0 && size == static_cast<ssize_t>(strlen(str)); } void HIDDevice::RebindDriver() |