From 4232b378e79f4254abc16a4254e2ba1b91851f11 Mon Sep 17 00:00:00 2001 From: Mark Salyzyn Date: Thu, 16 Apr 2015 08:40:55 -0700 Subject: [PATCH] libcutils: fs_config must use O_BINARY Bug: 19908228 Change-Id: I3273cf99b320941f9530a015c9e582af72469acb --- libcutils/fs_config.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libcutils/fs_config.c b/libcutils/fs_config.c index 171bf294e..9f8023e4f 100644 --- a/libcutils/fs_config.c +++ b/libcutils/fs_config.c @@ -37,6 +37,10 @@ #include #include +#ifndef O_BINARY +#define O_BINARY 0 +#endif + /* The following structure is stored little endian */ struct fs_path_config_from_file { uint16_t len; @@ -154,12 +158,12 @@ static int fs_config_open(int dir) char *name = NULL; asprintf(&name, "%s%s", out, dir ? conf_dir : conf_file); if (name) { - fd = TEMP_FAILURE_RETRY(open(name, O_RDONLY)); + fd = TEMP_FAILURE_RETRY(open(name, O_RDONLY | O_BINARY)); free(name); } } if (fd < 0) { - fd = TEMP_FAILURE_RETRY(open(dir ? conf_dir : conf_file, O_RDONLY)); + fd = TEMP_FAILURE_RETRY(open(dir ? conf_dir : conf_file, O_RDONLY | O_BINARY)); } return fd; }