Replace qemu_pipe_open with qemud_channel_open in camera
qemud_channel_open saves on concatenation and open the
pipe in blocking mode.
Bug: 145244672
Bug: 146676032
Test: boot check if the virtualscene camera works
Change-Id: I10b4120f7731397eb8d6e722829660ef0176a79e
Signed-off-by: Roman Kiryanov <rkir@google.com>
diff --git a/camera/QemuClient.cpp b/camera/QemuClient.cpp
index daef3ee..a8bdcbe 100755
--- a/camera/QemuClient.cpp
+++ b/camera/QemuClient.cpp
@@ -34,7 +34,7 @@
#endif // LOG_QUERIES
#define QEMU_PIPE_DEBUG LOGQ
-#include "qemu_pipe.h"
+#include "qemud.h"
namespace android {
@@ -226,20 +226,11 @@
/* Select one of the two: 'factory', or 'emulated camera' service */
if (param == NULL || *param == '\0') {
- /* No parameters: connect to the factory service. */
- char pipe_name[512];
- snprintf(pipe_name, sizeof(pipe_name), "qemud:%s",
- mCameraServiceName);
- mPipeFD = qemu_pipe_open(pipe_name);
+ mPipeFD = qemud_channel_open(mCameraServiceName);
} else {
- /* One extra char ':' that separates service name and parameters + six
- * characters for 'pipe:qemud:'. This is required by pipe protocol. */
- char* connection_str = new char[strlen(mCameraServiceName) +
- strlen(param) + 8];
- sprintf(connection_str, "qemud:%s:%s", mCameraServiceName, param);
-
- mPipeFD = qemu_pipe_open(connection_str);
- delete[] connection_str;
+ char buf[256];
+ snprintf(buf, sizeof(buf), "%s:%s", mCameraServiceName, param);
+ mPipeFD = qemud_channel_open(buf);
}
if (mPipeFD < 0) {
ALOGE("%s: Unable to connect to the camera service '%s': %s",