libsigrok/src/hardware
Lars-Peter Clausen 566007e15e Don't reset instance list in scan() callback
Some drivers set the device instance list to NULL in their scan() callback.
This means the driver loses all references to any devices contained in that
list and their resources will be leaked. Drivers can't free the devices at
this point either since an application might still use a device on the
list. So the existing devices on the instance list need to remain
unmodified during the scan() callback, even if that means that there will
be duplicates on the instance list. Only an explicit invocation of
sr_dev_clear() by the application is allowed to free the devices on the
instance list and reset the list.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2016-05-27 14:43:34 +02:00
..
agilent-dmm Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
appa-55ii Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
arachnid-labs-re-load-pro Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
asix-sigma Put driver pointers into special section 2016-05-18 01:41:55 +02:00
atten-pps3xxx Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
baylibre-acme Put driver pointers into special section 2016-05-18 01:41:55 +02:00
beaglelogic Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
brymen-bm86x Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
brymen-dmm Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
cem-dt-885x Put driver pointers into special section 2016-05-18 01:41:55 +02:00
center-3xx Put driver pointers into special section 2016-05-18 01:41:55 +02:00
chronovu-la Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
colead-slm Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
conrad-digi-35-cpu Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
demo Put driver pointers into special section 2016-05-18 01:41:55 +02:00
deree-de5000 Put driver pointers into special section 2016-05-18 01:41:55 +02:00
fluke-dmm Put driver pointers into special section 2016-05-18 01:41:55 +02:00
ftdi-la Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
fx2lafw Put driver pointers into special section 2016-05-18 01:41:55 +02:00
gmc-mh-1x-2x Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
gwinstek-gds-800 Put driver pointers into special section 2016-05-18 01:41:55 +02:00
hameg-hmo Put driver pointers into special section 2016-05-18 01:41:55 +02:00
hantek-6xxx Put driver pointers into special section 2016-05-18 01:41:55 +02:00
hantek-dso Put driver pointers into special section 2016-05-18 01:41:55 +02:00
hp-3457a Put driver pointers into special section 2016-05-18 01:41:55 +02:00
hung-chang-dso-2100 Put driver pointers into special section 2016-05-18 01:41:55 +02:00
ikalogic-scanalogic2 Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
ikalogic-scanaplus Put driver pointers into special section 2016-05-18 01:41:55 +02:00
kecheng-kc-330b Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
kern-scale Put driver pointers into special section 2016-05-18 01:41:55 +02:00
korad-kaxxxxp Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
lascar-el-usb lascar-el-usb: Add a missing SR_PRIV. 2016-05-18 01:41:55 +02:00
lecroy-logicstudio Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
link-mso19 link-mso19: mso_receive_data: Simplify device instance lookup 2016-05-23 18:25:24 +02:00
manson-hcs-3xxx Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
maynuo-m97 Put driver pointers into special section 2016-05-18 01:41:55 +02:00
mic-985xx Put driver pointers into special section 2016-05-18 01:41:55 +02:00
motech-lps-30x Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
norma-dmm Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
openbench-logic-sniffer Put driver pointers into special section 2016-05-18 01:41:55 +02:00
pce-322a pce-322a: Initial driver implementation. 2016-05-18 18:28:08 +02:00
pipistrello-ols Put driver pointers into special section 2016-05-18 01:41:55 +02:00
rigol-ds Put driver pointers into special section 2016-05-18 01:41:55 +02:00
saleae-logic16 saleae-logic16: Consolidate the samplerate limits into a single bitrate cap 2016-05-18 23:12:49 +02:00
scpi-pps scpi-pps: Add profile for HP 6633A supply 2016-05-19 08:16:51 -07:00
serial-dmm Put driver pointers into special section 2016-05-18 01:41:55 +02:00
sysclk-lwla Put driver pointers into special section 2016-05-18 01:41:55 +02:00
teleinfo Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
testo Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
tondaj-sl-814 Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
uni-t-dmm Put driver pointers into special section 2016-05-18 01:41:55 +02:00
uni-t-ut32x Don't reset instance list in scan() callback 2016-05-27 14:43:34 +02:00
victor-dmm Put driver pointers into special section 2016-05-18 01:41:55 +02:00
yokogawa-dlm Put driver pointers into special section 2016-05-18 01:41:55 +02:00
zeroplus-logic-cube Put driver pointers into special section 2016-05-18 01:41:55 +02:00
driver_list_end.c Put driver pointers into special section 2016-05-18 01:41:55 +02:00
driver_list_start.c Put driver pointers into special section 2016-05-18 01:41:55 +02:00