浏览代码

Kernel: Assert that device major/minor hasn't already been registered

It would be a bug to have multiple devices with the same major/minor
so let's have an assertion for that.
Andreas Kling 5 年之前
父节点
当前提交
2e38df7bd1
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      Kernel/Devices/Device.cpp

+ 3 - 1
Kernel/Devices/Device.cpp

@@ -29,7 +29,9 @@ Device::Device(unsigned major, unsigned minor)
     : m_major(major)
     , m_minor(minor)
 {
-    all_devices().set(encoded_device(m_major, m_minor), this);
+    u32 device_id = encoded_device(major, minor);
+    ASSERT(!all_devices().contains(device_id));
+    all_devices().set(device_id, this);
 }
 
 Device::~Device()