It seems that window_destroy() doesn't touch window_list. But
nevertheless thank you, I didn't checked it before your question.

2014-07-05 23:08 GMT+04:00, Jakub Jermar <[email protected]>:
> On 07/04/2014 09:00 PM, Wolf Ramovsky wrote:
>> === modified file 'uspace/srv/hid/compositor/compositor.c'
>> --- uspace/srv/hid/compositor/compositor.c   2014-03-01 23:05:38 +0000
>> +++ uspace/srv/hid/compositor/compositor.c   2014-07-04 18:58:58 +0000
>> @@ -891,6 +891,7 @@
>>
>>                      window_t *win = window_create();
>>                      if (!win) {
>> +                            fibril_mutex_unlock(&window_list_mtx);
>>                              async_answer_2(callid, ENOMEM, 0, 0);
>>                              return;
>>                      }
>> @@ -906,12 +907,14 @@
>>                      ++window_id;
>>
>>                      if (loc_service_register(name_in, &win->in_dsid) != 
>> EOK) {
>> +                            fibril_mutex_unlock(&window_list_mtx);
>>                              window_destroy(win);
>>                              async_answer_2(callid, EINVAL, 0, 0);
>>                              return;
>>                      }
>>
>>                      if (loc_service_register(name_out, &win->out_dsid) != 
>> EOK) {
>> +                            fibril_mutex_unlock(&window_list_mtx);
>>                              loc_service_unregister(win->in_dsid);
>>                              window_destroy(win);
>>                              async_answer_2(callid, EINVAL, 0, 0);
>
>
> Should not the mutex be unlocked only after the window is destroyed?
>
> Jakub
>
> _______________________________________________
> HelenOS-devel mailing list
> [email protected]
> http://lists.modry.cz/listinfo/helenos-devel
>

_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/listinfo/helenos-devel

Reply via email to