Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); Add missing files from internal repo sync by acoates-ms · Pull Request #8 · microsoft/react-native-macos · GitHub
Skip to content

Add missing files from internal repo sync - #8

Merged
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles
Mar 8, 2019
Merged

Add missing files from internal repo sync#8
Andrew Coates (acoates-ms) merged 2 commits into
microsoft:masterfrom
acoates-ms:missingfiles

Conversation

@acoates-ms

Copy link
Copy Markdown

No description provided.

@acoates-ms

Copy link
Copy Markdown
Author

/azp run

@azure-pipelines

Copy link
Copy Markdown

No pipelines are associated with this pull request.

@acoates-ms
Andrew Coates (acoates-ms) merged commit 395fab6 into microsoft:masterMar 8, 2019
@acoates-ms
Andrew Coates (acoates-ms) deleted the missingfiles branch March 8, 2019 05:04
t-nanava pushed a commit that referenced this pull request Jun 17, 2019
* Add missing files from internal repo sync
* Update PR template to warn people to submit to microsoft/rn
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request Nov 12, 2020
Summary:
changelog: [internal]
Prevents 2 type converions:
1. int <-> size_t
2. int <-> int32_t
# Why is using size_t better when working with indexes.
## 1. Type conversion isn't for free.
Take this example
```
size_t calculate(int number) {
return number + 1;
}
```
It generates following assembly (generated with armv8-a clang 10.0.0):
```
calculate(int): // calculate(int)
sub sp, sp, microsoft#16 // =16
str w0, [sp, microsoft#12]
ldr w8, [sp, microsoft#12]
add w9, w8, #1 // =1
mov w8, w9
sxtw x0, w8
add sp, sp, microsoft#16 // =16
ret
```
That's 9 instructions.
If we get rid of type conversion:
```
size_t calculate(size_t number) {
return number + 1;
}
```
Assembly (generated with armv8-a clang 10.0.0):
```
calculate(unsigned long): // calculate(unsigned long)
sub sp, sp, microsoft#16 // =16
str x0, [sp, microsoft#8]
ldr x8, [sp, microsoft#8]
add x0, x8, #1 // =1
add sp, sp, microsoft#16 // =16
ret
```
Compiler now produces only 7 instructions.
## Semantics
When using int for indexing, the type doesn't say much. By using `size_t`, just by looking at the type, it gives the reader more information about where it is coming from.
Reviewed By: JoshuaGross
Differential Revision: D24332248
fbshipit-source-id: 87ef982829ec14906ed9e002ea2e875fda4a0cd8
Adam Gleitman (amgleitman) pushed a commit to amgleitman/react-native-macos that referenced this pull request Jan 13, 2022
Nick Gerleman (NickGerleman) pushed a commit to NickGerleman/react-native that referenced this pull request May 13, 2025
…tion for existing view (react#51294)
Summary:
Pull Request resolved: react#51294
changelog: [internal]
Fix a crash where a node that is supposed to be culled doesn't get visited because culling context is not updated.
The differentiator would generate a create instruction for a view that already exists.
Stack trace for the crash:
```
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
* frame #0: 0x0000000111740874 libsystem_kernel.dylib`__pthread_kill + 8
frame #1: 0x00000001117aa2ec libsystem_pthread.dylib`pthread_kill + 264
frame #2: 0x0000000180171ea8 libsystem_c.dylib`abort + 100
frame microsoft#3: 0x00000001802b0144 libc++abi.dylib`abort_message + 128
frame microsoft#4: 0x000000018029fe4c libc++abi.dylib`demangling_terminate_handler() + 296
frame microsoft#5: 0x000000018006f220 libobjc.A.dylib`_objc_terminate() + 124
frame microsoft#6: 0x00000001375d1964 INFRAFramework`meta_terminate() + 5468
frame microsoft#7: 0x00000001802af570 libc++abi.dylib`std::__terminate(void (*)()) + 12
frame microsoft#8: 0x00000001802b2498 libc++abi.dylib`__cxxabiv1::failed_throw(__cxxabiv1::__cxa_exception*) + 32
frame microsoft#9: 0x00000001802b2478 libc++abi.dylib`__cxa_throw + 88
frame microsoft#10: 0x0000000180093904 libobjc.A.dylib`objc_exception_throw + 384
frame microsoft#11: 0x0000000180e6999c Foundation`-[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 268
frame microsoft#12: 0x000000031a3bcfc8 XPLAT_6_Framework`-[RCTComponentViewRegistry dequeueComponentViewWithComponentHandle:tag:] + 528
frame microsoft#13: 0x000000031a3ccdec XPLAT_6_Framework`RCTPerformMountInstructions(std::__1::vector<facebook::react::ShadowViewMutation, std::__1::allocator<facebook::react::ShadowViewMutation>> const&, RCTComponentViewRegistry*, RCTMountingTransactionObserverCoordinator&, int) + 356
frame microsoft#14: 0x000000031a3ccc7c XPLAT_6_Framework`-[RCTMountingManager performTransaction:]::$_1::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) const + 80
frame microsoft#15: 0x000000031a3ccc20 XPLAT_6_Framework`decltype(std::declval<-[RCTMountingManager performTransaction:]::$_1&>()(std::declval<facebook::react::MountingTransaction const&>(), std::declval<facebook::react::SurfaceTelemetry const&>())) std::__1::__invoke[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#16: 0x000000031a3ccbc8 XPLAT_6_Framework`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne190102]<-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&>(-[RCTMountingManager performTransaction:]::$_1&, facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 40
frame microsoft#17: 0x000000031a3ccb94 XPLAT_6_Framework`std::__1::__function::__alloc_func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()[abi:ne190102](facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#18: 0x000000031a3cba1c XPLAT_6_Framework`std::__1::__function::__func<-[RCTMountingManager performTransaction:]::$_1, std::__1::allocator<-[RCTMountingManager performTransaction:]::$_1>, void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&) + 44
frame microsoft#20: 0x000000032f219804 XPLAT_1_Framework`std::__1::function<void (facebook::react::MountingTransaction const&, facebook::react::SurfaceTelemetry const&)>::operator()(this=0x000000016d4f0c78, __arg=0x000000016d4f0a10, __arg=0x000000016d4f0978) const at function.h:989:10
frame microsoft#21: 0x000000032f219668 XPLAT_1_Framework`facebook::react::TelemetryController::pullTransaction(this=0x00000003f4680f00, willMount=0x000000016d4f0c98, doMount=0x000000016d4f0c78, didMount=0x000000016d4f0c58) const at TelemetryController.cpp:39:3
frame microsoft#22: 0x000000031a3c5b28 XPLAT_6_Framework`-[RCTMountingManager performTransaction:] + 544
frame microsoft#23: 0x000000031a3c5864 XPLAT_6_Framework`-[RCTMountingManager initiateTransaction:] + 456
frame microsoft#24: 0x000000031a3c5240 XPLAT_6_Framework`__42-[RCTMountingManager scheduleTransaction:]_block_invoke + 308
frame microsoft#25: 0x0000000131f81b84 BOTTOMFramework`__RCTExecuteOnMainQueue_block_invoke + 40
frame microsoft#26: 0x000000018017c788 libdispatch.dylib`_dispatch_call_block_and_release + 24
frame microsoft#27: 0x0000000180197278 libdispatch.dylib`_dispatch_client_callout + 12
frame microsoft#28: 0x00000001801b2fcc libdispatch.dylib`_dispatch_main_queue_drain.cold.7 + 24
frame microsoft#29: 0x000000018018c1c4 libdispatch.dylib`_dispatch_main_queue_drain + 1184
frame microsoft#30: 0x000000018018bd14 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 40
frame microsoft#31: 0x0000000180427fec CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
frame microsoft#32: 0x00000001804229f8 CoreFoundation`__CFRunLoopRun + 1920
frame microsoft#33: 0x0000000180421e3c CoreFoundation`CFRunLoopRunSpecific + 536
frame microsoft#34: 0x0000000190f62d00 GraphicsServices`GSEventRunModal + 164
frame microsoft#35: 0x0000000185bcec98 UIKitCore`-[UIApplication _run] + 796
frame microsoft#36: 0x0000000185bd3064 UIKitCore`UIApplicationMain + 124
frame microsoft#37: 0x0000000115fbf0bc PRODUCTFramework`main + 200
frame microsoft#38: 0x00000001114293d8 dyld_sim`start_sim + 20
frame microsoft#39: 0x0000000111506b4c dyld`start + 6000
```
Reviewed By: rubennorte
Differential Revision: D74654157
fbshipit-source-id: 9181bcd28524c71d0ca4620bd630dc0baa172386
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@acoates-ms