Skip to content

Commit 876eb2f

Browse files
committed
Do not use physical equality on JavaScript values
1 parent 684ea6f commit 876eb2f

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

src/lib/client/eliommod_dom.ml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ let fast_ancessor (elt1 : #Dom.node Js.t) (elt2 : #Dom.node Js.t) =
8383

8484
let slow_ancessor (elt1 : #Dom.node Js.t) (elt2 : #Dom.node Js.t) =
8585
let rec check_parent n =
86-
if n == (elt1 :> Dom.node Js.t)
86+
if Js.strict_equals n (elt1 :> Dom.node Js.t)
8787
then true
8888
else
8989
match Js.Opt.to_option n##.parentNode with
@@ -162,20 +162,20 @@ let slow_has_classes (node : Dom_html.element Js.t) =
162162
let found_attrib = ref false in
163163
for i = 0 to classes##.length - 1 do
164164
found_call_service :=
165-
Js.array_get classes i
166-
== Js.def (Js.string Eliom_runtime.RawXML.ce_call_service_class)
165+
Js.Optdef.strict_equals (Js.array_get classes i)
166+
(Js.def (Js.string Eliom_runtime.RawXML.ce_call_service_class))
167167
|| !found_call_service;
168168
found_process_node :=
169-
Js.array_get classes i
170-
== Js.def (Js.string Eliom_runtime.RawXML.process_node_class)
169+
Js.Optdef.strict_equals (Js.array_get classes i)
170+
(Js.def (Js.string Eliom_runtime.RawXML.process_node_class))
171171
|| !found_process_node;
172172
found_closure :=
173-
Js.array_get classes i
174-
== Js.def (Js.string Eliom_runtime.RawXML.ce_registered_closure_class)
173+
Js.Optdef.strict_equals (Js.array_get classes i)
174+
(Js.def (Js.string Eliom_runtime.RawXML.ce_registered_closure_class))
175175
|| !found_closure;
176176
found_attrib :=
177-
Js.array_get classes i
178-
== Js.def (Js.string Eliom_runtime.RawXML.ce_registered_attr_class)
177+
Js.Optdef.strict_equals (Js.array_get classes i)
178+
(Js.def (Js.string Eliom_runtime.RawXML.ce_registered_attr_class))
179179
|| !found_attrib
180180
done;
181181
!found_call_service, !found_process_node, !found_closure, !found_attrib
@@ -185,8 +185,8 @@ let slow_has_request_class (node : Dom_html.element Js.t) =
185185
let found_request_node = ref false in
186186
for i = 0 to classes##.length - 1 do
187187
found_request_node :=
188-
Js.array_get classes i
189-
== Js.def (Js.string Eliom_runtime.RawXML.request_node_class)
188+
Js.Optdef.strict_equals (Js.array_get classes i)
189+
(Js.def (Js.string Eliom_runtime.RawXML.request_node_class))
190190
|| !found_request_node
191191
done;
192192
!found_request_node
@@ -788,7 +788,7 @@ let onhashchange f =
788788
else
789789
let last_fragment = ref Dom_html.window##.location##.hash in
790790
let check () =
791-
if !last_fragment != Dom_html.window##.location##.hash
791+
if not (Js.equals !last_fragment Dom_html.window##.location##.hash)
792792
then (
793793
last_fragment := Dom_html.window##.location##.hash;
794794
f Dom_html.window##.location##.hash)

0 commit comments

Comments
 (0)