/**
  * Release the local reference to the server-side surface. Always call release() when you're done
  * with a Surface. This will make the surface invalid.
  */
 public void release() {
   if (mNativeObject != 0) {
     nativeRelease(mNativeObject);
     mNativeObject = 0;
   }
   mCloseGuard.close();
 }
 @Override
 protected void finalize() throws Throwable {
   try {
     if (mCloseGuard != null) {
       mCloseGuard.warnIfOpen();
     }
     if (mNativeObject != 0) {
       nativeRelease(mNativeObject);
     }
   } finally {
     super.finalize();
   }
 }