Make creat() posix compliant API-wise. Shouldn't affect the core as it's wrapped via a static inline.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25843 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
684c70bac5
commit
c61e89c0ed
30 changed files with 60 additions and 51 deletions
|
@ -2068,7 +2068,7 @@ static int disk_callback(int btn, struct gui_synclist *lists)
|
|||
#if (CONFIG_STORAGE & STORAGE_ATA)
|
||||
static bool dbg_identify_info(void)
|
||||
{
|
||||
int fd = creat("/identify_info.bin");
|
||||
int fd = creat("/identify_info.bin", 0666);
|
||||
if(fd >= 0)
|
||||
{
|
||||
#ifdef ROCKBOX_LITTLE_ENDIAN
|
||||
|
@ -2202,14 +2202,14 @@ static bool dbg_save_roms(void)
|
|||
int fd;
|
||||
int oldmode = system_memory_guard(MEMGUARD_NONE);
|
||||
|
||||
fd = creat("/internal_rom_0000-FFFF.bin");
|
||||
fd = creat("/internal_rom_0000-FFFF.bin", 0666);
|
||||
if(fd >= 0)
|
||||
{
|
||||
write(fd, (void *)0, 0x10000);
|
||||
close(fd);
|
||||
}
|
||||
|
||||
fd = creat("/internal_rom_2000000-203FFFF.bin");
|
||||
fd = creat("/internal_rom_2000000-203FFFF.bin", 0666);
|
||||
if(fd >= 0)
|
||||
{
|
||||
write(fd, (void *)0x2000000, 0x40000);
|
||||
|
@ -2226,13 +2226,13 @@ static bool dbg_save_roms(void)
|
|||
int oldmode = system_memory_guard(MEMGUARD_NONE);
|
||||
|
||||
#if defined(IRIVER_H100_SERIES)
|
||||
fd = creat("/internal_rom_000000-1FFFFF.bin");
|
||||
fd = creat("/internal_rom_000000-1FFFFF.bin", 0666);
|
||||
#elif defined(IRIVER_H300_SERIES)
|
||||
fd = creat("/internal_rom_000000-3FFFFF.bin");
|
||||
fd = creat("/internal_rom_000000-3FFFFF.bin", 0666);
|
||||
#elif defined(IAUDIO_X5) || defined(IAUDIO_M5) || defined(IAUDIO_M3)
|
||||
fd = creat("/internal_rom_000000-3FFFFF.bin");
|
||||
fd = creat("/internal_rom_000000-3FFFFF.bin", 0666);
|
||||
#elif defined(MPIO_HD200)
|
||||
fd = creat("/internal_rom_000000-1FFFFF.bin");
|
||||
fd = creat("/internal_rom_000000-1FFFFF.bin", 0666);
|
||||
#endif
|
||||
if(fd >= 0)
|
||||
{
|
||||
|
@ -2242,7 +2242,7 @@ static bool dbg_save_roms(void)
|
|||
system_memory_guard(oldmode);
|
||||
|
||||
#ifdef HAVE_EEPROM
|
||||
fd = creat("/internal_eeprom.bin");
|
||||
fd = creat("/internal_eeprom.bin", 0666);
|
||||
if (fd >= 0)
|
||||
{
|
||||
int old_irq_level;
|
||||
|
@ -2273,7 +2273,7 @@ static bool dbg_save_roms(void)
|
|||
{
|
||||
int fd;
|
||||
|
||||
fd = creat("/internal_rom_000000-0FFFFF.bin");
|
||||
fd = creat("/internal_rom_000000-0FFFFF.bin", 0666);
|
||||
if(fd >= 0)
|
||||
{
|
||||
write(fd, (void *)0x20000000, FLASH_SIZE);
|
||||
|
@ -2287,7 +2287,7 @@ static bool dbg_save_roms(void)
|
|||
{
|
||||
int fd;
|
||||
|
||||
fd = creat("/flash_rom_A0000000-A01FFFFF.bin");
|
||||
fd = creat("/flash_rom_A0000000-A01FFFFF.bin", 0666);
|
||||
if (fd >= 0)
|
||||
{
|
||||
write(fd, (void*)0xa0000000, FLASH_SIZE);
|
||||
|
@ -2301,7 +2301,7 @@ static bool dbg_save_roms(void)
|
|||
{
|
||||
int fd;
|
||||
|
||||
fd = creat("/eeprom_E0000000-E0001FFF.bin");
|
||||
fd = creat("/eeprom_E0000000-E0001FFF.bin", 0666);
|
||||
if (fd >= 0)
|
||||
{
|
||||
write(fd, (void*)0xe0000000, 0x2000);
|
||||
|
|
|
@ -666,7 +666,7 @@ static bool clipboard_pastefile(const char *src, const char *target, bool copy)
|
|||
src_fd = open(src, O_RDONLY);
|
||||
|
||||
if (src_fd >= 0) {
|
||||
target_fd = creat(target);
|
||||
target_fd = creat(target, 0666);
|
||||
|
||||
if (target_fd >= 0) {
|
||||
result = true;
|
||||
|
|
|
@ -97,7 +97,7 @@ char *plugin_get_current_filename(void);
|
|||
/* Some wrappers used to monitor open and close and detect leaks*/
|
||||
static int open_wrapper(const char* pathname, int flags);
|
||||
static int close_wrapper(int fd);
|
||||
static int creat_wrapper(const char *pathname);
|
||||
static int creat_wrapper(const char *pathname, mode_t mode);
|
||||
#endif
|
||||
|
||||
static const struct plugin_api rockbox_api = {
|
||||
|
@ -1002,9 +1002,9 @@ static int close_wrapper(int fd)
|
|||
return PREFIX(close)(fd);
|
||||
}
|
||||
|
||||
static int creat_wrapper(const char *pathname)
|
||||
static int creat_wrapper(const char *pathname, mode_t mode)
|
||||
{
|
||||
int fd = PREFIX(creat)(pathname);
|
||||
int fd = PREFIX(creat)(pathname, mode);
|
||||
|
||||
if(fd >= 0)
|
||||
open_files |= (1<<fd);
|
||||
|
|
|
@ -401,7 +401,7 @@ struct plugin_api {
|
|||
int (*close)(int fd);
|
||||
ssize_t (*read)(int fd, void* buf, size_t count);
|
||||
off_t (*lseek)(int fd, off_t offset, int whence);
|
||||
int (*creat)(const char *pathname);
|
||||
int (*creat)(const char *pathname, mode_t mode);
|
||||
ssize_t (*write)(int fd, const void* buf, size_t count);
|
||||
int (*remove)(const char* pathname);
|
||||
int (*rename)(const char* path, const char* newname);
|
||||
|
|
|
@ -612,7 +612,7 @@ static bool save_memo(int changed, bool new_mod, struct shown *shown)
|
|||
int fp, fq;
|
||||
/* use O_RDWR|O_CREAT so that file is created if it doesn't exist. */
|
||||
fp = rb->open(MEMO_FILE, O_RDWR|O_CREAT);
|
||||
fq = rb->creat(TEMP_FILE);
|
||||
fq = rb->creat(TEMP_FILE, 0666);
|
||||
if ( (fq > -1) && (fp > -1) )
|
||||
{
|
||||
int i;
|
||||
|
|
|
@ -119,7 +119,7 @@ enum settings_file_status clock_settings_load(struct clock_settings* settings,
|
|||
|
||||
enum settings_file_status clock_settings_save(struct clock_settings* settings,
|
||||
char* filename){
|
||||
int fd = rb->creat(filename);
|
||||
int fd = rb->creat(filename, 0666);
|
||||
if(fd >= 0){ /* does file exist? */
|
||||
rb->write (fd, settings, sizeof(*settings));
|
||||
rb->close(fd);
|
||||
|
|
|
@ -536,7 +536,7 @@ enum plugin_status plugin_start(const void* parameter)
|
|||
status = tidy_lcd_menu();
|
||||
if (tidy_loaded_and_changed)
|
||||
{
|
||||
int fd = rb->creat(CUSTOM_FILES);
|
||||
int fd = rb->creat(CUSTOM_FILES, 0666);
|
||||
int i;
|
||||
if (fd >= 0)
|
||||
{
|
||||
|
|
|
@ -221,7 +221,7 @@ create_or_open_file (const char *filename)
|
|||
|
||||
if (!rb->file_exists (filename))
|
||||
{
|
||||
fd = rb->creat (filename);
|
||||
fd = rb->creat(filename, 0666);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -67,7 +67,7 @@ static int write_file(void)
|
|||
|
||||
rb->snprintf(tmpfilename, MAX_PATH+1, "%s.tmp", filename);
|
||||
|
||||
fd = rb->creat(tmpfilename);
|
||||
fd = rb->creat(tmpfilename, 0666);
|
||||
if(fd < 0)
|
||||
return 10 * fd - 1;
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ int configfile_save(const char *filename, struct configdata *cfg,
|
|||
char buf[MAX_PATH];
|
||||
|
||||
get_cfg_filename(buf, MAX_PATH, filename);
|
||||
fd = rb->creat(buf);
|
||||
fd = rb->creat(buf, 0666);
|
||||
if(fd < 0)
|
||||
return fd*10 - 1;
|
||||
|
||||
|
|
|
@ -60,7 +60,7 @@ int save_bmp_file( char* filename, struct bitmap *bm )
|
|||
int fh;
|
||||
int x,y;
|
||||
if( bm->format != FORMAT_NATIVE ) return -1;
|
||||
fh = rb->creat( filename );
|
||||
fh = rb->creat( filename , 0666);
|
||||
if( fh < 0 ) return -1;
|
||||
|
||||
rb->write( fh, header, sizeof( header ) );
|
||||
|
|
|
@ -1161,7 +1161,7 @@ bool save_pfraw(char* filename, struct bitmap *bm)
|
|||
struct pfraw_header bmph;
|
||||
bmph.width = bm->width;
|
||||
bmph.height = bm->height;
|
||||
int fh = rb->creat( filename );
|
||||
int fh = rb->creat( filename , 0666);
|
||||
if( fh < 0 ) return false;
|
||||
rb->write( fh, &bmph, sizeof( struct pfraw_header ) );
|
||||
int y;
|
||||
|
|
|
@ -381,7 +381,7 @@ enum settings_file_status tuner_settings_load(struct tuner_settings* settings,
|
|||
enum settings_file_status tuner_settings_save(struct tuner_settings* settings,
|
||||
char* filename)
|
||||
{
|
||||
int fd = rb->creat(filename);
|
||||
int fd = rb->creat(filename, 0666);
|
||||
if(fd >= 0){ /* does file exist? */
|
||||
rb->write (fd, settings, sizeof(*settings));
|
||||
rb->close(fd);
|
||||
|
|
|
@ -263,7 +263,7 @@ int load_list(void)
|
|||
|
||||
int save_list(void)
|
||||
{
|
||||
int myfd = rb->creat(RFA_FILE);
|
||||
int myfd = rb->creat(RFA_FILE, 0666);
|
||||
if (myfd < 0)
|
||||
{
|
||||
rb->splash(HZ, "Could Not Open " RFA_FILE);
|
||||
|
@ -388,7 +388,7 @@ int export_list_to_file_text(void)
|
|||
}
|
||||
|
||||
/* create and open the file */
|
||||
int myfd = rb->creat(RFA_FILE_TEXT);
|
||||
int myfd = rb->creat(RFA_FILE_TEXT, 0666);
|
||||
if (myfd < 0)
|
||||
{
|
||||
rb->splashf(HZ*4, "failed to open: fd = %d, file = %s",
|
||||
|
|
|
@ -85,7 +85,7 @@ bool load_sc_file(sc_file_t *file, char *filename, bool must_exist,
|
|||
/* The file didn't exist on disk */
|
||||
if (!must_exist) {
|
||||
DEBUGF("Trying to create link file '%s'...\n", filename);
|
||||
fd = rb->creat(filename);
|
||||
fd = rb->creat(filename, 0666);
|
||||
if (fd < 0){
|
||||
/* For some reason we couldn't create the file,
|
||||
* so return an error message and exit */
|
||||
|
|
|
@ -167,7 +167,7 @@ void init_wav(char* filename)
|
|||
{
|
||||
wavinfo.totalsamples = 0;
|
||||
|
||||
wavinfo.fd = rb->creat(filename);
|
||||
wavinfo.fd = rb->creat(filename, 0666);
|
||||
|
||||
if (wavinfo.fd >= 0)
|
||||
{
|
||||
|
|
|
@ -123,7 +123,7 @@ static bool test_fs(void)
|
|||
rb->snprintf(text_buf, sizeof text_buf, "Data size: %dKB", (TEST_SIZE>>10));
|
||||
log_text(text_buf, true);
|
||||
|
||||
fd = rb->creat(TEST_FILE);
|
||||
fd = rb->creat(TEST_FILE, 0666);
|
||||
if (fd < 0)
|
||||
{
|
||||
rb->splash(HZ, "creat() failed.");
|
||||
|
@ -211,7 +211,7 @@ static bool file_speed(int chunksize, bool align)
|
|||
log_text("--------------------", true);
|
||||
|
||||
/* File creation write speed */
|
||||
fd = rb->creat(TEST_FILE);
|
||||
fd = rb->creat(TEST_FILE, 0666);
|
||||
if (fd < 0)
|
||||
{
|
||||
rb->splash(HZ, "creat() failed.");
|
||||
|
@ -311,7 +311,7 @@ static bool test_speed(void)
|
|||
for (i = 0; TIME_BEFORE(*rb->current_tick, time); i++)
|
||||
{
|
||||
rb->snprintf(text_buf, sizeof(text_buf), TESTBASEDIR "/%08x.tmp", i);
|
||||
fd = rb->creat(text_buf);
|
||||
fd = rb->creat(text_buf, 0666);
|
||||
if (fd < 0)
|
||||
{
|
||||
last_file = i;
|
||||
|
|
|
@ -49,7 +49,7 @@ static int insert_data_in_file(const char *fname, int fpos, char *buf, int num_b
|
|||
return 10*orig_fd - 1;
|
||||
}
|
||||
|
||||
fd = rb->creat(tmpname);
|
||||
fd = rb->creat(tmpname, 0666);
|
||||
if(fd < 0) {
|
||||
rb->close(orig_fd);
|
||||
return 10*fd - 2;
|
||||
|
|
|
@ -457,7 +457,7 @@ void load_settings(void) {
|
|||
}
|
||||
|
||||
void save_settings(void) {
|
||||
int fp = rb->creat(PLUGIN_DEMOS_DIR "/.vu_meter");
|
||||
int fp = rb->creat(PLUGIN_DEMOS_DIR "/.vu_meter", 0666);
|
||||
if(fp >= 0) {
|
||||
rb->write (fp, &vumeter_settings, sizeof(struct saved_settings));
|
||||
rb->close(fp);
|
||||
|
|
|
@ -169,7 +169,7 @@ static int wav2wv(const char *infile)
|
|||
outextension = outfile + rb->strlen(outfile) - 3;
|
||||
outextension[1] = outextension[2];
|
||||
outextension[2] = 0;
|
||||
out_fd = rb->creat(outfile);
|
||||
out_fd = rb->creat(outfile, 0666);
|
||||
|
||||
if (out_fd < 0) {
|
||||
rb->splash(HZ*2, "could not create file!");
|
||||
|
|
|
@ -584,7 +584,7 @@ static void save_snapshot_file_type(char *name, int type)
|
|||
int snsh;
|
||||
snsh = rb->open(name, O_WRONLY);
|
||||
if(snsh < 0) {
|
||||
snsh = rb->creat(name);
|
||||
snsh = rb->creat(name, 0666);
|
||||
if(snsh < 0) {
|
||||
put_msg("Could not create snapshot file");
|
||||
return;
|
||||
|
|
|
@ -1135,7 +1135,7 @@ static void radio_save_presets(void)
|
|||
int fd;
|
||||
int i;
|
||||
|
||||
fd = creat(filepreset);
|
||||
fd = creat(filepreset, 0666);
|
||||
if(fd >= 0)
|
||||
{
|
||||
for(i = 0;i < num_presets;i++)
|
||||
|
|
|
@ -196,7 +196,7 @@ static void untar(int tar_fd)
|
|||
{
|
||||
int wc;
|
||||
|
||||
fd = creat(path);
|
||||
fd = creat(path, 0666);
|
||||
if (fd < 0)
|
||||
{
|
||||
printf("failed to create file (%d)", fd);
|
||||
|
|
|
@ -55,7 +55,7 @@ static struct filedesc openfiles[MAX_OPEN_FILES];
|
|||
|
||||
static int flush_cache(int fd);
|
||||
|
||||
int creat(const char *pathname)
|
||||
int file_creat(const char *pathname)
|
||||
{
|
||||
return open(pathname, O_WRONLY|O_CREAT|O_TRUNC);
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ static struct mutex tuner_mtx;
|
|||
static int fd_log = -1;
|
||||
|
||||
#define TUNER_LOG_OPEN() if (fd_log < 0) \
|
||||
fd_log = creat("/tuner_dump.txt")
|
||||
fd_log = creat("/tuner_dump.txt", 0666)
|
||||
/* syncing required because close() is never called */
|
||||
#define TUNER_LOG_SYNC() fsync(fd_log)
|
||||
#define TUNER_LOG(s...) fdprintf(fd_log, s)
|
||||
|
|
|
@ -609,7 +609,7 @@ void glyph_cache_save(struct font* pf)
|
|||
#ifdef WPSEDITOR
|
||||
cache_fd = open(GLYPH_CACHE_FILE, O_WRONLY|O_CREAT|O_TRUNC);
|
||||
#else
|
||||
cache_fd = creat(GLYPH_CACHE_FILE);
|
||||
cache_fd = creat(GLYPH_CACHE_FILE, 0666);
|
||||
#endif
|
||||
if (cache_fd < 0) return;
|
||||
|
||||
|
|
|
@ -48,9 +48,9 @@
|
|||
#define O_TRUNC 0x10
|
||||
#endif
|
||||
|
||||
#if defined(SIMULATOR) && !defined(PLUGIN) && !defined(CODEC)
|
||||
#if defined(SIMULATOR) && !defined(PLUGIN) && !defined(CODEC)
|
||||
#define open(x,y) sim_open(x,y)
|
||||
#define creat(x) sim_creat(x)
|
||||
#define creat(x,m) sim_creat(x,m)
|
||||
#define remove(x) sim_remove(x)
|
||||
#define rename(x,y) sim_rename(x,y)
|
||||
#define filesize(x) sim_filesize(x)
|
||||
|
@ -60,11 +60,12 @@
|
|||
#define read(x,y,z) sim_read(x,y,z)
|
||||
#define write(x,y,z) sim_write(x,y,z)
|
||||
#define close(x) sim_close(x)
|
||||
extern int sim_creat(const char *pathname, mode_t mode);
|
||||
#endif
|
||||
|
||||
typedef int (*open_func)(const char* pathname, int flags);
|
||||
typedef ssize_t (*read_func)(int fd, void *buf, size_t count);
|
||||
typedef int (*creat_func)(const char *pathname);
|
||||
typedef int (*creat_func)(const char *pathname, mode_t mode);
|
||||
typedef ssize_t (*write_func)(int fd, const void *buf, size_t count);
|
||||
typedef void (*qsort_func)(void *base, size_t nmemb, size_t size,
|
||||
int(*_compar)(const void *, const void *));
|
||||
|
@ -74,7 +75,15 @@ extern int close(int fd);
|
|||
extern int fsync(int fd);
|
||||
extern ssize_t read(int fd, void *buf, size_t count);
|
||||
extern off_t lseek(int fildes, off_t offset, int whence);
|
||||
extern int creat(const char *pathname);
|
||||
extern int file_creat(const char *pathname);
|
||||
#ifndef SIMULATOR
|
||||
/* posix compatibility function */
|
||||
static inline int creat(const char *pathname, mode_t mode)
|
||||
{
|
||||
(void)mode;
|
||||
return file_creat(pathname);
|
||||
}
|
||||
#endif
|
||||
extern ssize_t write(int fd, const void *buf, size_t count);
|
||||
extern int remove(const char* pathname);
|
||||
extern int rename(const char* path, const char* newname);
|
||||
|
|
|
@ -140,7 +140,7 @@ void screen_dump(void)
|
|||
IF_CNFN_NUM_(, NULL));
|
||||
#endif
|
||||
|
||||
fd = creat(filename);
|
||||
fd = creat(filename, 0666);
|
||||
if (fd < 0)
|
||||
return;
|
||||
|
||||
|
@ -317,7 +317,7 @@ void remote_screen_dump(void)
|
|||
IF_CNFN_NUM_(, NULL));
|
||||
#endif
|
||||
|
||||
fd = creat(filename);
|
||||
fd = creat(filename, 0666);
|
||||
if (fd < 0)
|
||||
return;
|
||||
|
||||
|
|
|
@ -352,9 +352,9 @@ int sim_close(int fd)
|
|||
return ret;
|
||||
}
|
||||
|
||||
int sim_creat(const char *name)
|
||||
int sim_creat(const char *name, mode_t mode)
|
||||
{
|
||||
return OPEN(get_sim_pathname(name), O_BINARY | O_WRONLY | O_CREAT | O_TRUNC, 0666);
|
||||
return OPEN(get_sim_pathname(name), O_BINARY | O_WRONLY | O_CREAT | O_TRUNC, mode);
|
||||
}
|
||||
|
||||
ssize_t sim_read(int fd, void *buf, size_t count)
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
#endif
|
||||
|
||||
/* extern functions, needed for screendump() */
|
||||
extern int sim_creat(const char *name);
|
||||
extern int sim_creat(const char *name, mode_t mode);
|
||||
|
||||
SDL_Surface* lcd_surface;
|
||||
|
||||
|
@ -162,7 +162,7 @@ void screen_dump(void)
|
|||
IF_CNFN_NUM_(, NULL));
|
||||
DEBUGF("screen_dump\n");
|
||||
|
||||
fd = sim_creat(filename);
|
||||
fd = sim_creat(filename, 0666);
|
||||
if (fd < 0)
|
||||
return;
|
||||
|
||||
|
|
Loading…
Reference in a new issue