Skip to content

Commit b24af44

Browse files
committed
Fix edge case for falsy values
1 parent eca9d80 commit b24af44

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

Diff for: lib/debug/server_cdp.rb

+3-1
Original file line numberDiff line numberDiff line change
@@ -1114,7 +1114,9 @@ def process_cdp args
11141114
when :properties
11151115
oid = args.shift
11161116

1117-
if obj = @obj_map[oid]
1117+
if @obj_map.key?(oid)
1118+
obj = @obj_map[oid]
1119+
11181120
members = if Array === obj
11191121
VariableInspector.new.indexed_members_of(obj, start: 0, count: obj.size)
11201122
else

Diff for: lib/debug/server_dap.rb

+4-2
Original file line numberDiff line numberDiff line change
@@ -869,8 +869,10 @@ def process_dap args
869869
event! :protocol_result, :scope, req, variables: vars, tid: self.id
870870
when :variable
871871
vid = args.shift
872-
obj = @var_map[vid]
873-
if obj
872+
873+
if @var_map.key?(vid)
874+
obj = @var_map[vid]
875+
874876
members = case req.dig('arguments', 'filter')
875877
when 'indexed'
876878
VariableInspector.new.indexed_members_of(

Diff for: test/protocol/step_back_raw_dap_test.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -883,7 +883,7 @@ def test_step_back_works_correctly
883883
namedVariables: /\d+/,
884884
indexedVariables: 0,
885885
expensive: false,
886-
variablesReference: 11
886+
variablesReference: 12
887887
},
888888
{
889889
name: "Global variables",
@@ -917,15 +917,15 @@ def test_step_back_works_correctly
917917
name: "%self",
918918
value: "Foo",
919919
type: "Module",
920-
variablesReference: 12,
920+
variablesReference: 13,
921921
indexedVariables: 0,
922922
namedVariables: /\d+/
923923
},
924924
{
925925
name: "bar",
926926
value: "nil",
927927
type: "NilClass",
928-
variablesReference: 13,
928+
variablesReference: 14,
929929
indexedVariables: 0,
930930
namedVariables: /\d+/
931931
}

0 commit comments

Comments
 (0)