Skip to content

Commit 4178790

Browse files
authored
Merge pull request #1030 from smartdevicelink/bugfix/copy_message
Fix issue in RS when removing Parcel objects for notifying all cliets
2 parents 7eff21b + 9252c78 commit 4178790

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -939,8 +939,8 @@ public boolean onUnbind(Intent intent) {
939939
return super.onUnbind(intent);
940940
}
941941

942-
943-
private void notifyClients(Message message){
942+
943+
private void notifyClients(final Message message){
944944
if(message==null){
945945
Log.w(TAG, "Can't notify clients, message was null");
946946
return;
@@ -950,11 +950,13 @@ private void notifyClients(Message message){
950950
synchronized(REGISTERED_APPS_LOCK){
951951
Collection<RegisteredApp> apps = registeredApps.values();
952952
Iterator<RegisteredApp> it = apps.iterator();
953+
Message formattedMessage = new Message();
953954
while(it.hasNext()){
954955
RegisteredApp app = it.next();
956+
formattedMessage.copyFrom(message);
955957
//Format the message for the receiving app and appropriate messaging version
956-
if(formatMessage(app, message)) {
957-
result = app.sendMessage(message);
958+
if(formatMessage(app, formattedMessage)) {
959+
result = app.sendMessage(formattedMessage);
958960
if (result == RegisteredApp.SEND_MESSAGE_ERROR_MESSENGER_DEAD_OBJECT) {
959961
app.close();
960962
it.remove();

0 commit comments

Comments
 (0)