@@ -11,6 +11,15 @@ if (!Backbone) {
1111 return ;
1212}
1313
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+
1423// We're too late to catch all of these by simply patching Backbone.Events.on
1524var affectedObjects = [
1625 Backbone . Events ,
@@ -20,27 +29,12 @@ var affectedObjects = [
2029 Backbone . View . prototype ,
2130 Backbone . Router . prototype ,
2231 Backbone . History . prototype
23- ] ;
32+ ] , i = 0 , l = affectedObjects . length ;
2433
25- for ( var i = 0 ; i < affectedObjects . length ; i ++ ) {
34+ for ( ; i < l ; i ++ ) {
2635 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 ) ;
4337 affected . bind = affected . on ;
4438}
4539
46- } ( this , Raven , window . Backbone ) ) ;
40+ } ( this , Raven , window . Backbone ) ) ;
0 commit comments