- if (device->plugin && device->plugin->opendev) {
- ret = device->plugin->opendev(device->plugin_index);
- if (ret != SR_OK)
- return ret;
+ if (!device) {
+ sr_err("session: %s: device was NULL", __func__);
+ return SR_ERR_ARG;
+ }
+
+ if (!device->plugin) {
+ sr_err("session: %s: device->plugin was NULL", __func__);
+ return SR_ERR_ARG;
+ }
+
+ if (!device->plugin->opendev) {
+ sr_err("session: %s: device->plugin->opendev was NULL",
+ __func__);
+ return SR_ERR_ARG;
+ }
+
+ if (!session) {
+ sr_err("session: %s: session was NULL", __func__);
+ return SR_ERR; /* TODO: SR_ERR_BUG? */
+ }
+
+ if ((ret = device->plugin->opendev(device->plugin_index)) != SR_OK) {
+ sr_err("session: %s: opendev failed (%d)", __func__, ret);
+ return ret;