diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index adc9b1f43..274597238 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2013-04-05 Corinna Vinschen + + * mmap.cc (is_mmapped_region): Call LIST_UNLOCK on premature return. + 2013-04-03 Corinna Vinschen * fhandler_proc.cc (format_proc_loadavg): Raise too small buffer size diff --git a/winsup/cygwin/mmap.cc b/winsup/cygwin/mmap.cc index 878fd037e..d32f6fa06 100644 --- a/winsup/cygwin/mmap.cc +++ b/winsup/cygwin/mmap.cc @@ -672,7 +672,10 @@ is_mmapped_region (caddr_t start_addr, caddr_t end_address) mmap_list *map_list = mmapped_areas.get_list_by_fd (-1, NULL); if (!map_list) - return false; + { + LIST_UNLOCK (); + return false; + } mmap_record *rec; caddr_t u_addr;