From eab7b00cee2949b05340736a33a04da010dee857 Mon Sep 17 00:00:00 2001 From: James Ide Date: Tue, 4 Aug 2015 06:05:31 -0700 Subject: [PATCH] [JSContext] Define `ContextExecutor.setContextName` for debugging Summary: Add a method that lets JS set the name of the JSContext for debugging purposes. I check `JSGlobalContextSetName` since it is not available on iOS 7. Closes https://github.com/facebook/react-native/pull/2144 Github Author: James Ide --- React/Executors/RCTContextExecutor.m | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/React/Executors/RCTContextExecutor.m b/React/Executors/RCTContextExecutor.m index daa0fa26d..e39a7c94a 100644 --- a/React/Executors/RCTContextExecutor.m +++ b/React/Executors/RCTContextExecutor.m @@ -557,4 +557,13 @@ static NSError *RCTNSErrorFromJSError(JSContextRef context, JSValueRef jsError) }), @"js_call,json_call", (@{@"objectName": objectName}))]; } +RCT_EXPORT_METHOD(setContextName:(NSString *)name) +{ + if (JSGlobalContextSetName != NULL) { + JSStringRef JSName = JSStringCreateWithCFString((__bridge CFStringRef)name); + JSGlobalContextSetName(_context.ctx, JSName); + JSStringRelease(JSName); + } +} + @end