瀏覽代碼

[HUST CSE][vbus] fix the NULL pointer error

LostCivilization 2 年之前
父節點
當前提交
ca023c1b41
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      components/vbus/vbus_chnx.c

+ 5 - 4
components/vbus/vbus_chnx.c

@@ -231,13 +231,14 @@ void rt_vbus_chnx_register_disconn(rt_device_t dev,
                                    rt_vbus_event_listener indi,
                                    void *ctx)
 {
-    struct rt_vbus_dev *vdev = dev->user_data;
-
-    RT_ASSERT(vdev->chnr != 0);
+    if (dev && dev->user_data)
+    {
+        struct rt_vbus_dev *vdev = dev->user_data;
+        RT_ASSERT(vdev->chnr != 0);
 
-    if (vdev)
         rt_vbus_register_listener(vdev->chnr, RT_VBUS_EVENT_ID_DISCONN,
                                   indi, ctx);
+    }
 }
 
 #define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))