Skip to content

Commit a3aa0f4

Browse files
insraqbenvinegar
authored andcommitted
Handle cycle ref in JSON.stringify (#829)
1 parent 508121f commit a3aa0f4

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

plugins/react-native.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
// /var/containers/Bundle/Application/{DEVICE_ID}/HelloWorld.app/main.jsbundle
2424

2525
var PATH_STRIP_RE = /^.*\/[^\.]+(\.app|CodePush)/;
26-
26+
var stringify = require('json-stringify-safe');
2727
var FATAL_ERROR_KEY = '--rn-fatal--';
2828
var ASYNC_STORAGE_KEY = '--raven-js-global-error-payload--';
2929

@@ -137,7 +137,7 @@ function reactNativePlugin(Raven, options) {
137137
*/
138138
reactNativePlugin._persistPayload = function(payload) {
139139
var AsyncStorage = require('react-native').AsyncStorage;
140-
return AsyncStorage.setItem(ASYNC_STORAGE_KEY, JSON.stringify(payload))
140+
return AsyncStorage.setItem(ASYNC_STORAGE_KEY, stringify(payload))
141141
['catch'](function() { return null; });
142142
}
143143

@@ -198,7 +198,7 @@ reactNativePlugin._transport = function (options) {
198198
// Just set a phony Origin value; only matters if Sentry Project is configured
199199
// to whitelist specific origins.
200200
request.setRequestHeader('Origin', 'react-native://');
201-
request.send(JSON.stringify(options.data));
201+
request.send(stringify(options.data));
202202
};
203203

204204
/**

0 commit comments

Comments
 (0)