@@ -11,6 +11,15 @@ if (!Backbone) {
11
11
return ;
12
12
}
13
13
14
+ function makeBackboneEventsOn ( oldOn ) {
15
+ return function BackboneEventsOn ( name , callback , context ) {
16
+ var _callback = Raven . wrap ( callback . _callback || callback ) ;
17
+ callback . _callback = _callback ;
18
+
19
+ return oldOn . call ( this , name , callback , context ) ;
20
+ } ;
21
+ }
22
+
14
23
// We're too late to catch all of these by simply patching Backbone.Events.on
15
24
var affectedObjects = [
16
25
Backbone . Events ,
@@ -20,27 +29,12 @@ var affectedObjects = [
20
29
Backbone . View . prototype ,
21
30
Backbone . Router . prototype ,
22
31
Backbone . History . prototype
23
- ] ;
32
+ ] , i = 0 , l = affectedObjects . length ;
24
33
25
- for ( var i = 0 ; i < affectedObjects . length ; i ++ ) {
34
+ for ( ; i < l ; i ++ ) {
26
35
var affected = affectedObjects [ i ] ;
27
-
28
- var _oldOn = affected . on ;
29
- affected . on = function BackboneEventsOn ( name , callback , context ) {
30
- var _callback ;
31
- if ( callback . _callback ) {
32
- _callback = callback . _callback ;
33
- } else {
34
- _callback = callback ;
35
- }
36
-
37
- callback = Raven . wrap ( callback ) ;
38
- callback . _callback = _callback ;
39
-
40
- return _oldOn . call ( this , name , callback , context ) ;
41
- } ;
42
-
36
+ affected . on = makeBackboneEventsOn ( affected . on ) ;
43
37
affected . bind = affected . on ;
44
38
}
45
39
46
- } ( this , Raven , window . Backbone ) ) ;
40
+ } ( this , Raven , window . Backbone ) ) ;
0 commit comments