tripit / api

TripIt's API Documentation and Support Forum
http://www.tripit.com/developer
Other
47 stars 16 forks source link

"Uncaught RangeError: Maximum call stack size exceeded" when using TripIt plugin from https in Chrome Browser #174

Closed 1I111I1 closed 6 years ago

1I111I1 commented 7 years ago

I'm using Example 1 from the Add-to_TripIt Plugin Documentation. I literally copied and pasted the example into the body of an empty page, put in my domain and api_key, changed the year to a future date, and tested the plugin. Here is the actual code I'm using (with my credentials redacted).

<!DOCTYPE HTML>

<html>

<head>
     <title>Test Tripit</title>
</head>

<body>

     <script>
          window.tiAsyncInit = function() {
               TripIt.init({
                    'api_key':'REDACTED',
                    'domain':'REDACTED'
               });

               // Your code that uses the TripIt SDK goes here...

               // Creating an AddToTripIt plugin object
               var a2t = TripIt.create('addToTripIt')

               // Creating a Lodging Object inside AddToTripIt object
               var lodging = a2t.create('lodging');

               // Check-in and check-out date/time
               var startDateTime = new Date(2020, 07, 14, 11, 00); // On 08/14/2020, 11:00
               lodging.setStartDateTime(startDateTime);
               var endDateTime = new Date(2020, 07, 16, 19, 00); // On 08/16/2020, 19:00
               lodging.setEndDateTime(endDateTime);

               // Supplier
               lodging.setSupplierName('San Francisco Hotels');

               // Hotel address
               var address1 = a2t.create('address');
               address1.setAddrLine1('500 Treat Ave');
               address1.setAddrLine2('Suite 100');
               address1.setCity('San Francisco');
               address1.setState('CA');
               address1.setCountry('USA');
               lodging.setAddress(address1);

               // Guests
               var person1 = a2t.create('traveler');
               person1.setFirstName('Andy');
               person1.setLastName('Denmark');
               var person2 = a2t.create('traveler');
               person2.setFirstName('Thor');
               lodging.addGuest(person1);
               lodging.addGuest(person2);

               lodging.setNumberGuests('2');
               lodging.setNumberRooms('1');
               lodging.setRoomType('suite');

               // All done, so now initialize the A2T button to be rendered; pass callback function as well.
               TripIt.initializePlugin(a2t, function(data) {
                    console.log('CLIENT: status obtained: ');
                    console.log(data);
               });

          };

          (function(d){
               var js, id = 'tripit-jssdk', ref = d.getElementsByTagName('script')[0];
               if (d.getElementById(id)) {return;}
               js = d.createElement('script'); js.id = id; js.async = true;
               js.src = "//www.tripit.com/js/sdk/tripit_sdk.js";
               ref.parentNode.insertBefore(js, ref);
          }(document));
     </script>

     <div id="add-to-tripit-plugin"></div>

</body>

</html>

The plugin seems to send the data for both http and https in Chrome. However, it throws the following javascript error in the developer console when the plugin initializes using https.

Uncaught RangeError: Maximum call stack size exceeded
    at RegExp.exec (<anonymous>)
    at RegExp.test (native)
    at BlueKaiAdapter.sanitizeParameter (<anonymous>:6:295)
    at BlueKaiAdapter.sanitizeQuery (<anonymous>:5:247)
    at BlueKaiAdapter.sanitizeUrl (<anonymous>:3:420)
    at BlueKaiAdapter.sanitizeParameter (<anonymous>:6:101)
    at BlueKaiAdapter.sanitizeQuery (<anonymous>:5:247)
    at BlueKaiAdapter.sanitizeUrl (<anonymous>:3:420)
    at BlueKaiAdapter.sanitizeParameter (<anonymous>:6:101)
    at BlueKaiAdapter.sanitizeQuery (<anonymous>:5:247)
    at BlueKaiAdapter.sanitizeUrl (<anonymous>:3:420)
    at BlueKaiAdapter.sanitizeParameter (<anonymous>:6:101)
1I111I1 commented 7 years ago

Also throws a similar error in Firefox when using https.

too much recursion[Learn More]  addToTripIt:4:150
    BlueKaiAdapter/this.sanitizePath https://www.tripit.com/uhp/addToTripIt:4:150
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:362
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
    BlueKaiAdapter/this.sanitizeParameter https://www.tripit.com/uhp/addToTripIt:6:96
    BlueKaiAdapter/this.sanitizeQuery https://www.tripit.com/uhp/addToTripIt:5:242
    BlueKaiAdapter/this.sanitizeUrl https://www.tripit.com/uhp/addToTripIt:3:415
1I111I1 commented 7 years ago

Are there any Tripit developers that want to chime in here? @aosyborg @vsejpal

aosyborg commented 7 years ago

Hi @1I111I1, thanks for the report. We're looking into this and will update you when we can.

hliss commented 6 years ago

Bit late of a followup here, but the offending library is no longer used as of quite some time ago. Thanks for the report!