Skip to content

Commit efb40b7

Browse files
committed
Add some missing guards for getProperty calls
Bug: 40272934 Change-Id: I773facf9d9af2b40990e8aaaaf2335205cc59db5 Reviewed-on: https://chrome-internal-review.googlesource.com/c/v8/fuzzilli/+/8550379 Reviewed-by: Matthias Liedtke <mliedtke@google.com> Commit-Queue: Matthias Liedtke <mliedtke@google.com> Auto-Submit: Hendrik Wüthrich <whendrik@google.com>
1 parent 7bd555e commit efb40b7

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

Sources/Fuzzilli/CodeGen/CodeGenerators.swift

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1639,7 +1639,8 @@ public let CodeGenerators: [CodeGenerator] = [
16391639
b.hide(Symbol)
16401640
let name = chooseUniform(from: JavaScriptEnvironment.wellKnownSymbols)
16411641
let propertyName = b.getProperty(name, of: Symbol)
1642-
b.getComputedProperty(propertyName, of: obj)
1642+
let needGuard = b.type(of: obj).MayBe(.nullish)
1643+
b.getComputedProperty(propertyName, of: obj, guard: needGuard)
16431644
},
16441645

16451646
CodeGenerator("WellKnownPropertyStoreGenerator", inputs: .preferred(.object())) { b, obj in
@@ -1652,7 +1653,8 @@ public let CodeGenerators: [CodeGenerator] = [
16521653
},
16531654

16541655
CodeGenerator("PrototypeAccessGenerator", inputs: .preferred(.object())) { b, obj in
1655-
b.getProperty("__proto__", of: obj)
1656+
let needGuard = b.type(of: obj).MayBe(.nullish)
1657+
b.getProperty("__proto__", of: obj, guard: needGuard)
16561658
},
16571659

16581660
CodeGenerator("PrototypeOverwriteGenerator", inputs: .preferred(.object(), .object())) { b, obj, proto in

0 commit comments

Comments
 (0)