[haiku-commits] Re: haiku: hrev50337 - src/kits/media src/add-ons/media/plugins/http_streamer headers/private/media src/add-ons/media/plugins/ape_reader

  • From: Hamish Morrison <hamishm53@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 2 Jun 2016 21:13:02 +0100

On 31/05/2016 00:19, b.vitruvio@xxxxxxxxx wrote:

+ssize_t
+BAdapterIO::ReadAt(off_t position, void* buffer, size_t size)
+{
+     printf("read at %d  %d \n", (int)position, (int)size);
+     _WaitForData(position+size);
+     AutoReadLocker(fLock);
+
+     return fBuffer->ReadAt(position, buffer, size);
+}

You're just creating a temporary AutoReadLocker here. It's destructed
immediately so the read won't happen under the lock.

You probably want to declare a variable:

AutoReadLocker locker(fLock);

And also in all the other methods in the file.

Other related posts: