From d9925967b76a505994fdf75560df85fd72c30e08 Mon Sep 17 00:00:00 2001 From: Charles Bell Date: Sun, 17 Dec 2017 20:45:03 +0100 Subject: [PATCH] Fix segfault when using a specific camera device --- lib/qrscanner.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/qrscanner.py b/lib/qrscanner.py index f659d5e4..7516d55d 100644 --- a/lib/qrscanner.py +++ b/lib/qrscanner.py @@ -49,7 +49,8 @@ def scan_barcode(device='', timeout=-1, display=True, threaded=False): libzbar.zbar_symbol_set_first_symbol.restype = ctypes.POINTER(ctypes.c_int) proc = libzbar.zbar_processor_create(threaded) libzbar.zbar_processor_request_size(proc, 640, 480) - libzbar.zbar_processor_init(proc, device, display) + if libzbar.zbar_processor_init(proc, device.encode('utf-8'), display) != 0: + raise RuntimeError("Can not start QR scanner; initialization failed.") libzbar.zbar_processor_set_visible(proc) if libzbar.zbar_process_one(proc, timeout): symbols = libzbar.zbar_processor_get_results(proc)