diff --git a/components/cplusplus/Thread.cpp b/components/cplusplus/Thread.cpp index 4d2d8a59e..a01bd95e4 100644 --- a/components/cplusplus/Thread.cpp +++ b/components/cplusplus/Thread.cpp @@ -6,7 +6,7 @@ Thread::Thread(rt_uint32_t stack_size, rt_uint8_t priority, rt_uint32_t tick, const char *name) -: _entry(RT_NULL), started(false) +: _entry(RT_NULL), _param(RT_NULL), started(false) { rt_event_init(&_event, name, 0); @@ -24,7 +24,7 @@ Thread::Thread(void (*entry)(void *p), rt_uint8_t priority, rt_uint32_t tick, const char *name) -: _entry(RT_NULL), started(false), _param(p) +: _entry(RT_NULL), _param(p), started(false) { rt_event_init(&_event, name, 0); diff --git a/components/dfs/filesystems/devfs/devfs.c b/components/dfs/filesystems/devfs/devfs.c index 4f2f0ebcd..4694b96c8 100644 --- a/components/dfs/filesystems/devfs/devfs.c +++ b/components/dfs/filesystems/devfs/devfs.c @@ -19,6 +19,7 @@ * * Change Logs: * Date Author Notes + * 2018-02-11 Bernard Ignore O_CREAT flag in open. */ #include @@ -137,9 +138,6 @@ int dfs_device_fs_open(struct dfs_fd *file) rt_err_t result; rt_device_t device; - if (file->flags & O_CREAT) - return -EINVAL; - /* open root directory */ if ((file->path[0] == '/') && (file->path[1] == '\0') && (file->flags & O_DIRECTORY)) diff --git a/components/libc/compilers/dlib/libc.c b/components/libc/compilers/dlib/libc.c index fe219537e..fa977ab39 100644 --- a/components/libc/compilers/dlib/libc.c +++ b/components/libc/compilers/dlib/libc.c @@ -36,7 +36,7 @@ int libc_system_init(void) { -#if defined(RT_USING_DFS) & defined(RT_USING_DFS_DEVFS) +#if defined(RT_USING_DFS) && defined(RT_USING_DFS_DEVFS) rt_device_t dev_console; dev_console = rt_console_get_device(); @@ -50,10 +50,11 @@ int libc_system_init(void) } #endif -#if defined RT_USING_PTHREADS && !defined RT_USING_COMPONENTS_INIT +#if defined (RT_USING_PTHREADS) && !defined (RT_USING_COMPONENTS_INIT) pthread_system_init(); #endif return 0; } INIT_COMPONENT_EXPORT(libc_system_init); + diff --git a/components/libc/compilers/newlib/stdio.c b/components/libc/compilers/newlib/stdio.c index f28383818..9a225622b 100644 --- a/components/libc/compilers/newlib/stdio.c +++ b/components/libc/compilers/newlib/stdio.c @@ -81,7 +81,9 @@ int libc_stdio_set_console(const char* device_name, int mode) _GLOBAL_REENT->__sdidinit = 1; } - return fileno(std_console); + if (std_console) return fileno(std_console); + + return -1; } int libc_stdio_get_console(void) { diff --git a/include/rtdbg.h b/include/rtdbg.h index 637390a1c..26e289eff 100644 --- a/include/rtdbg.h +++ b/include/rtdbg.h @@ -32,15 +32,15 @@ * header file. * * #define DBG_SECTION_NAME "[ MOD]" - * #define DEBUG_ENABLE // enable debug macro - * #define DEBUG_LEVEL DBG_INFO - * #include // must after of DEBUG_ENABLE or some other options + * #define DBG_ENABLE // enable debug macro + * #define DBG_LEVEL DBG_INFO + * #include // must after of DEBUG_ENABLE or some other options * * Then in your C/C++ file, you can use dbg_log macro to print out logs: * dbg_log(DBG_INFO, "this is a log!\n"); * * Or if you want to use different color for different kinds log, you can - * #define DEBUG_COLOR + * #define DBG_COLOR */ #ifndef RT_DBG_H__