]> git.sesse.net Git - casparcg/blobdiff - dependencies64/cef/linux/tests/cefclient/browser/resource_util_linux.cc
Upgrade CEF to 3.3029.1611.g44e39a8 / Chromium 58.0.3029.81.
[casparcg] / dependencies64 / cef / linux / tests / cefclient / browser / resource_util_linux.cc
diff --git a/dependencies64/cef/linux/tests/cefclient/browser/resource_util_linux.cc b/dependencies64/cef/linux/tests/cefclient/browser/resource_util_linux.cc
new file mode 100644 (file)
index 0000000..939cc67
--- /dev/null
@@ -0,0 +1,36 @@
+// Copyright (c) 2013 The Chromium Embedded Framework Authors.
+// Portions copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "tests/shared/browser/resource_util.h"
+
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+namespace client {
+
+bool GetResourceDir(std::string& dir) {
+  char buff[1024];
+
+  // Retrieve the executable path.
+  ssize_t len = readlink("/proc/self/exe", buff, sizeof(buff)-1);
+  if (len == -1)
+    return false;
+
+  buff[len] = 0;
+
+  // Remove the executable name from the path.
+  char* pos = strrchr(buff, '/');
+  if (!pos)
+    return false;
+
+  // Add "cefclient_files" to the path.
+  strcpy(pos+1, "cefclient_files");  // NOLINT(runtime/printf)
+  dir = std::string(buff);
+  return true;
+}
+
+}  // namespace client
+