diff --git a/media/libmediatranscoding/transcoder/PassthroughTrackTranscoder.cpp b/media/libmediatranscoding/transcoder/PassthroughTrackTranscoder.cpp
index a4cbf33..e2cc6b6 100644
--- a/media/libmediatranscoding/transcoder/PassthroughTrackTranscoder.cpp
+++ b/media/libmediatranscoding/transcoder/PassthroughTrackTranscoder.cpp
@@ -44,8 +44,17 @@
     // Check if the free list contains a large enough buffer.
     auto it = mFreeBufferMap.lower_bound(minimumBufferSize);
     if (it != mFreeBufferMap.end()) {
+        uint8_t* buffer = it->second;
         mFreeBufferMap.erase(it);
-        return it->second;
+        return buffer;
+    }
+
+    // If the maximum buffer count is reached, remove an existing free buffer.
+    if (mAddressSizeMap.size() >= mMaxBufferCount) {
+        auto it = mFreeBufferMap.begin();
+        mAddressSizeMap.erase(it->second);
+        delete[] it->second;
+        mFreeBufferMap.erase(it);
     }
 
     // Allocate a new buffer.
@@ -55,14 +64,6 @@
         return nullptr;
     }
 
-    // If the maximum buffer count is reached, remove an existing free buffer.
-    if (mAddressSizeMap.size() >= mMaxBufferCount) {
-        auto it = mFreeBufferMap.begin();
-        mFreeBufferMap.erase(it);
-        mAddressSizeMap.erase(it->second);
-        delete[] it->second;
-    }
-
     // Add the buffer to the tracking set.
     mAddressSizeMap.emplace(buffer, minimumBufferSize);
     return buffer;
