From 4890730a5f0b986bb8b35b4ccfa9cc61ccdb72e8 Mon Sep 17 00:00:00 2001 From: "roel@libnfc.org" Date: Tue, 26 Mar 2013 16:01:52 +0000 Subject: [PATCH] fixed crash, when proxmark was claimed by other process --- client/flasher.c | 2 +- client/proxmark3.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/client/flasher.c b/client/flasher.c index 6019a6b9..3ed43845 100644 --- a/client/flasher.c +++ b/client/flasher.c @@ -72,7 +72,7 @@ void CloseProxmark() { int OpenProxmark(size_t i) { sp = uart_open(serial_port_name); - if (sp == INVALID_SERIAL_PORT) { + if (sp == INVALID_SERIAL_PORT || sp == CLAIMED_SERIAL_PORT) { //poll once a second return 0; } diff --git a/client/proxmark3.c b/client/proxmark3.c index 81f2c18a..78bc1fe4 100644 --- a/client/proxmark3.c +++ b/client/proxmark3.c @@ -221,11 +221,16 @@ int main(int argc, char* argv[]) { offline = 0; } */ + sp = uart_open(argv[1]); if (sp == INVALID_SERIAL_PORT) { printf("ERROR: invalid serial port\n"); marg.usb_present = 0; offline = 1; + } else if (sp == CLAIMED_SERIAL_PORT) { + printf("ERROR: serial port is claimed by another process\n"); + marg.usb_present = 0; + offline = 1; } else { marg.usb_present = 1; offline = 0; -- 2.39.2