summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Kralevich <nnk@google.com>2012-10-16 09:46:45 -0700
committerNick Kralevich <nnk@google.com>2012-10-16 09:46:45 -0700
commitcbfca5ff92c2e267878451fa882c989a1a49dbf4 (patch)
tree0495218a73d2d929cb5a55fd32c255ccf1c0bcbc
parentdb1b8993439cc1b0f741735e15d72a8cd67a6752 (diff)
downloadchromium-cbfca5ff92c2e267878451fa882c989a1a49dbf4.tar.gz
Remove base/file_util_android.cc
file_util_android.cc duplicates a bunch of definitions from libc. This causes the following (soon to be fatal) warning: /usr/local/google/code/android/master2/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: warning: hidden symbol 'mkstemp' in out/target/product/maguro/obj/SHARED_LIBRARIES/libchromium_net_intermediates/base/file_util_android.o is referenced by DSO out/target/product/maguro/obj/lib/libcutils.so /usr/local/google/code/android/master2/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: error: treating warnings as errors collect2: ld returned 1 exit status make: *** [out/target/product/maguro/obj/SHARED_LIBRARIES/libchromium_net_intermediates/LINKED/libchromium_net.so] Error 1 Since libc already defines these mk*temp*() methods, there's no need for chromium to redefine it. Change-Id: Ib028ecc1f3978c5c399b22bacdd6d6120105bca8
-rw-r--r--Android.mk1
-rw-r--r--base/file_util_android.cc164
2 files changed, 0 insertions, 165 deletions
diff --git a/Android.mk b/Android.mk
index 4863e575..71f6a97d 100644
--- a/Android.mk
+++ b/Android.mk
@@ -58,7 +58,6 @@ LOCAL_SRC_FILES += \
base/file_descriptor_shuffle.cc \
base/file_path.cc \
base/file_util.cc \
- base/file_util_android.cc \
base/file_util_posix.cc \
base/lazy_instance.cc \
base/logging.cc \
diff --git a/base/file_util_android.cc b/base/file_util_android.cc
deleted file mode 100644
index e101e347..00000000
--- a/base/file_util_android.cc
+++ /dev/null
@@ -1,164 +0,0 @@
-// Copyright (c) 2006-2008 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 "base/file_util.h"
-
-#include <fcntl.h>
-
-#include <string>
-#include <vector>
-
-#include "base/eintr_wrapper.h"
-#include "base/file_path.h"
-#include "base/string_util.h"
-
-// just lifted off bionic, no should find out why it doesn't get linked in
-
-static int _gettemp(char *, int *, int, int);
-
-extern uint32_t arc4random();
-
-int
-mkstemps(char *path, int slen)
-{
- int fd;
-
- return (_gettemp(path, &fd, 0, slen) ? fd : -1);
-}
-
-int
-mkstemp(char *path)
-{
- int fd;
-
- return (_gettemp(path, &fd, 0, 0) ? fd : -1);
-}
-
-char *
-mkdtemp(char *path)
-{
- return(_gettemp(path, (int *)NULL, 1, 0) ? path : (char *)NULL);
-}
-
-char *_mktemp(char *);
-
-char *
-_mktemp(char *path)
-{
- return(_gettemp(path, (int *)NULL, 0, 0) ? path : (char *)NULL);
-}
-
-#ifdef __BIONIC__
-__warn_references(mktemp,
- "warning: mktemp() possibly used unsafely; consider using mkstemp()");
-#endif
-
-char *
-mktemp(char *path)
-{
- return(_mktemp(path));
-}
-
-
-static int
-_gettemp(char *path, int *doopen, int domkdir, int slen)
-{
- char *start, *trv, *suffp;
- struct stat sbuf;
- int rval;
- pid_t pid;
-
- if (doopen && domkdir) {
- errno = EINVAL;
- return(0);
- }
-
- for (trv = path; *trv; ++trv)
- ;
- trv -= slen;
- suffp = trv;
- --trv;
- if (trv < path) {
- errno = EINVAL;
- return (0);
- }
- pid = getpid();
- while (trv >= path && *trv == 'X' && pid != 0) {
- *trv-- = (pid % 10) + '0';
- pid /= 10;
- }
- while (trv >= path && *trv == 'X') {
- char c;
-
- pid = (arc4random() & 0xffff) % (26+26);
- if (pid < 26)
- c = pid + 'A';
- else
- c = (pid - 26) + 'a';
- *trv-- = c;
- }
- start = trv + 1;
-
- /*
- * check the target directory; if you have six X's and it
- * doesn't exist this runs for a *very* long time.
- */
- if (doopen || domkdir) {
- for (;; --trv) {
- if (trv <= path)
- break;
- if (*trv == '/') {
- *trv = '\0';
- rval = stat(path, &sbuf);
- *trv = '/';
- if (rval != 0)
- return(0);
- if (!S_ISDIR(sbuf.st_mode)) {
- errno = ENOTDIR;
- return(0);
- }
- break;
- }
- }
- }
-
- for (;;) {
- if (doopen) {
- if ((*doopen =
- open(path, O_CREAT|O_EXCL|O_RDWR, 0600)) >= 0)
- return(1);
- if (errno != EEXIST)
- return(0);
- } else if (domkdir) {
- if (mkdir(path, 0700) == 0)
- return(1);
- if (errno != EEXIST)
- return(0);
- } else if (lstat(path, &sbuf))
- return(errno == ENOENT ? 1 : 0);
-
- /* tricky little algorithm for backward compatibility */
- for (trv = start;;) {
- if (!*trv)
- return (0);
- if (*trv == 'Z') {
- if (trv == suffp)
- return (0);
- *trv++ = 'a';
- } else {
- if (isdigit(*trv))
- *trv = 'a';
- else if (*trv == 'z') /* inc from z to A */
- *trv = 'A';
- else {
- if (trv == suffp)
- return (0);
- ++*trv;
- }
- break;
- }
- }
- }
- /*NOTREACHED*/
-}