Commit b733032
committed
fix: handle null module.layer in renderContentAsset
Webpack's Module base class defaults `layer` to `null` when
`experiments.layers` is enabled and no explicit layer is assigned.
The existing check `typeof module.layer !== "undefined"` incorrectly
evaluates to `true` for `null` (since `typeof null` is `"object"`),
causing a crash when accessing `module.layer.length`.
Replace the check with `typeof module.layer === "string"` which
correctly handles both `null` and `undefined` while being more
precise about the expected type.1 parent 144de04 commit b733032
5 files changed
Lines changed: 32 additions & 3 deletions
File tree
- src
- test/cases/simple-with-experiments-layers
- expected
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1537 | 1537 | | |
1538 | 1538 | | |
1539 | 1539 | | |
1540 | | - | |
| 1540 | + | |
1541 | 1541 | | |
1542 | 1542 | | |
1543 | 1543 | | |
1544 | | - | |
| 1544 | + | |
1545 | 1545 | | |
1546 | 1546 | | |
1547 | 1547 | | |
| |||
1577 | 1577 | | |
1578 | 1578 | | |
1579 | 1579 | | |
1580 | | - | |
| 1580 | + | |
1581 | 1581 | | |
1582 | 1582 | | |
1583 | 1583 | | |
| |||
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
Lines changed: 21 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
0 commit comments