Browse Source

Fix ncnn attribute null check

Lutz Roeder 6 năm trước cách đây
mục cha
commit
28e8de8d2b
1 tập tin đã thay đổi với 15 bổ sung12 xóa
  1. 15 12
      src/ncnn.js

+ 15 - 12
src/ncnn.js

@@ -164,19 +164,22 @@ ncnn.Graph = class {
                 layer.inputs = columns.splice(0, inputCount);
                 layer.outputs = columns.splice(0, outputCount);
                 layer.attr = {};
-                layer.attributes = columns.map((attribute) => {
-                    let list = attribute.split('=');
-                    let key = list[0].trim();
-                    let value = list[1].trim();
-                    let keyInt = parseInt(key, 10);
-                    if (key < 0) {
-                        value = value.split(',').map((v) => v.trim());
-                        value.shift();
-                        key = (-(keyInt + 23300)).toString();
+                layer.attributes = [];
+                for (const column of columns) {
+                    const parts = column.split('=');
+                    if (parts.length === 2) {
+                        let key = parts[0].trim();
+                        let value = parts[1].trim();
+                        const keyInt = parseInt(key, 10);
+                        if (keyInt < 0) {
+                            value = value.split(',').map((v) => v.trim());
+                            value.shift();
+                            key = (-(keyInt + 23300)).toString();
+                        }
+                        layer.attr[key] = value;
+                        layer.attributes.push({ key: key, value: value });
                     }
-                    layer.attr[key] = value;
-                    return { key: key, value: value };
-                });
+                }
                 layers.push(layer);
             }
         }