Quellcode durchsuchen

Merge pull request #3998 from thread-liu/main

[update] check whether it's a same console device.
Bernard Xiong vor 4 Jahren
Ursprung
Commit
cce66c4bce
1 geänderte Dateien mit 5 neuen und 1 gelöschten Zeilen
  1. 5 1
      src/kservice.c

+ 5 - 1
src/kservice.c

@@ -1116,7 +1116,7 @@ RTM_EXPORT(rt_console_get_device);
  *
  * @param name the name of new console device
  *
- * @return the old console device handler
+ * @return the old console device handler on successful, or RT_NULL on failure.
  */
 rt_device_t rt_console_set_device(const char *name)
 {
@@ -1127,6 +1127,10 @@ rt_device_t rt_console_set_device(const char *name)
 
     /* find new console device */
     new_device = rt_device_find(name);
+    
+    /* check whether it's a same device */
+    if (new_device == old_device) return RT_NULL;
+    
     if (new_device != RT_NULL)
     {
         if (_console_device != RT_NULL)