のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

createScreenshotSurface failed

Cross Reference: /frameworks/base/services/surfaceflinger/LayerScreenshot.cpp

    86 uint32_t LayerScreenshot::doTransaction(uint32_t flags)
     87 {
     88     const Layer::State& draw(drawingState());
     89     const Layer::State& curr(currentState());
     90 
     91     if (draw.flags & ISurfaceComposer::eLayerHidden) {
     92         if (!(curr.flags & ISurfaceComposer::eLayerHidden)) {
     93             // we're going from hidden to visible
     94             status_t err = captureLocked();
     95             if (err != NO_ERROR) {
     96                 LOGW("createScreenshotSurface failed (%s)", strerror(-err));
     97             }
     98         }
     99     } else if (curr.flags & ISurfaceComposer::eLayerHidden) {
    100         // we're going from visible to hidden
    101         if (mTextureName) {
    102             glDeleteTextures(1, &mTextureName);
    103             mTextureName = 0;
    104         }
    105     }
    106     return LayerBaseClient::doTransaction(flags);
    107 }