tree fbcd9254b7f9dd08af1fb1d20eb898988abad2ec
parent a6f44fd715a5084d6832b7d922914552c417a2e6
author Amine Alami <43780877+Alami-Amine@users.noreply.github.com> 1727420117 +0200
committer GitHub <noreply@github.com> 1727420117 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJm9lbVCRC1aQ7uu5UhlAAAtx4QAFeqBYMflKLBetrBPqnHFqDF
 rbg36ga+gZrTDIN2CDI/S0TP2iZnG07+gPKmNZnCzAzserQicEtg3rSMAFJix8X8
 2i7xY5DejlpUP4zHJ154RejCfpw+K/ANgYzix0cSGGGIL4Wta+Pk8xrAKXnTzij/
 CUgk5OnMbLjHwFzABU1TdAbsdVLvXlxPZp6bTaHzOQf3b3JzO/19N7yAh+3NOTKl
 OASyYsoEmVhcj7Si/LIvHOc07Ad9tlAEzeH4N96kkZ2Gkb/wlrNqYkrKUKfK7fgR
 c4fRCAkz6XRT/NbRW/zrINzdXfaMu6scUFQ0M7px3gEgjl38crRXrb1+uq5KOaPv
 hhiAFdh4zCH7CfqHBTVckbopi0/51Bz7A9T+ghxx6o9xWcrjhyZPrLz9Wixvd53O
 R4n0KQPnT1iSc0ADBPen5wKFh4mZbNFUMo32tUudy5G3ZlH4fKiuAa9bCw27iSw3
 Ct3Uuakyz3mvTKGuhZW/fVSwQvMtbGgVdinl7OA7OMGns/YXduu1Imra+SOiM6A7
 exLTvegYzUPflXBzu/lg7Kf7zIm2nBFKb5agZrqeynwwdMnKK4icghk7rjYccJRx
 L6tuvg4Tm8wl+jk2TEALRMVUMQ2DFSg6PklhNWZ/GkFx3GpkA2Uf0VWX5Luj5oeG
 G98oMtnyqvNk/JJQC4cW
 =gDhw
 -----END PGP SIGNATURE-----
 

Use LambdaBridge to safely invoke functions in GLib Matter context (#35777)

* using LambdaBridge to cast function pointer

* adding support for Lambda that returns a CHIP_ERROR to LambdaBridge

* pass an out pointer to capture function return result

* Tizen Platform: Using LambdaBridge to safely invoke functions in GLib Matter context

* Update to not modify lambdabridge

* Potentiall cleaner code

* Update code to make it compile

* Update tizen code too

* Tizen platform fix

* Duplicating Changes to NuttX platform

* Tizen Platform Fix

---------

Co-authored-by: Andrei Litvin <andreilitvin@google.com>