alsa_sound: prevent lowlatency errors triggering WD reset

- HAL tries to recover from pcm write or read failure
  by closing and reopening pcm driver.
- There is no check when pcm is reopened. If the
  reopen fails it keeps trying multiple times in loop
- Fix the issue by checking error condition and
  return on failure.

Bug: 7253359
Change-Id: Ia15153f5b43bb0f255a8b34b70025a6215484cee
Signed-off-by: Iliyan Malchev <malchev@google.com>
diff --git a/alsa_sound/AudioStreamInALSA.cpp b/alsa_sound/AudioStreamInALSA.cpp
index 031d477..3b66c24 100644
--- a/alsa_sound/AudioStreamInALSA.cpp
+++ b/alsa_sound/AudioStreamInALSA.cpp
@@ -435,6 +435,13 @@
                 }
                 else
                     mHandle->module->open(mHandle);
+
+                if(mHandle->handle == NULL) {
+                   ALOGE("read:: PCM device re-open failed");
+                   mParent->mLock.unlock();
+                   return 0;
+                }
+
                 mParent->mLock.unlock();
                 continue;
             }