Bug fix: Refer removed surface id in vector of pending_end_draw
authorYuta Doi <yuta-d@witz-inc.co.jp>
Tue, 12 Jun 2018 04:29:23 +0000 (13:29 +0900)
committerYuta Doi <yuta-d@witz-inc.co.jp>
Wed, 20 Jun 2018 03:42:21 +0000 (12:42 +0900)
Change-Id: I76d86bb19388334dd640fbe07e8d307dec9b61cc
Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
src/app.cpp

index c611501..7d2f121 100644 (file)
@@ -620,10 +620,12 @@ void App::api_enddraw(char const *drawing_name) {
 
    for (unsigned i = 0, iend = this->pending_end_draw.size(); i < iend; i++) {
       auto n = this->lookup_name(this->pending_end_draw[i]);
+      int surface_id = this->pending_end_draw[i];
+
       if (n && *n == role) {
          std::swap(this->pending_end_draw[i], this->pending_end_draw[iend - 1]);
          this->pending_end_draw.resize(iend - 1);
-         this->activate(this->pending_end_draw[i]);
+         this->activate(surface_id);
          this->emit_flushdraw(drawing_name);
       }
    }