sm: lazy service - fix race
There is a possible race: - service registers binder A - service registers client callback (cc1) for A - sm send cc1 "A hasClients" - service registers binder A (again - bad behavior!) - side effect: "hasClients" implicitly set to false - service registers client callback (cc2) for A - sm sends cc1 and cc2 "A hasClients" Due to an intentionally overly careful check in client callbacks, they crash when this double-send of 'hasClients' is hit. This CL retains the state of cc1 in order to fix the issue. Comments are added with various details about the implementation, and b/279948722 is filed to resolve these comments. Bug: 279898063 Test: aidl_lazy_test Change-Id: Ida443d5b02f19736baabdc57ff283995cdcc2a87
Loading
Please register or sign in to comment