@@ -110,13 +110,13 @@ int V4l2Device::AllocateBuffers(unsigned int count)
110110 const Buffer &b = buffer_allocs_.emplace_back (fds, sizes);
111111
112112 // May as well, and this also calls REQBUFS.
113- ImportBuffer (b);
113+ importBuffer (b);
114114 }
115115
116116 return buffer_allocs_.size ();
117117}
118118
119- int V4l2Device::ImportBuffer (BufferRef buffer)
119+ std::vector<V4l2Device::BufferCache>::iterator V4l2Device::importBuffer (BufferRef buffer)
120120{
121121 std::vector<BufferCache>::iterator cache_it;
122122
@@ -140,7 +140,7 @@ int V4l2Device::ImportBuffer(BufferRef buffer)
140140 [&buffer](const auto &b) { return b == buffer && !b.queued ; });
141141
142142 if (cache_it != buffer_cache_.end ())
143- return cache_it - buffer_cache_. begin () ;
143+ return cache_it;
144144
145145 for (unsigned int p = 0 ; p < num_memory_planes_; p++)
146146 {
@@ -167,7 +167,7 @@ int V4l2Device::ImportBuffer(BufferRef buffer)
167167 buffer.get ().Fd (), buffer.get ().Size (), buffer_cache_.size ());
168168 }
169169
170- return cache_it - buffer_cache_. begin () ;
170+ return cache_it;
171171}
172172
173173void V4l2Device::ReleaseBuffers ()
@@ -202,10 +202,10 @@ int V4l2Device::QueueBuffer(const Buffer &buffer)
202202 v4l2_plane planes[VIDEO_MAX_PLANES] = {};
203203 v4l2_buffer buf {};
204204
205- int idx = ImportBuffer (buffer);
206- buffer_cache_[idx]. queued = true ;
205+ auto cache_it = importBuffer (buffer);
206+ cache_it-> queued = true ;
207207
208- buf.index = buffer_cache_[idx]. id ;
208+ buf.index = cache_it-> id ;
209209 buf.type = buf_type_;
210210 buf.memory = V4L2_MEMORY_DMABUF;
211211
0 commit comments