From 24f1a370347488228f8dde67255cd2b2fa101825 Mon Sep 17 00:00:00 2001 From: ldx <3327017674@qq.com> Date: Sun, 12 Apr 2026 20:53:41 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=8F=20ssize=5Ft=20?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E4=B8=BA=20signed=20int=EF=BC=88=E5=8D=95?= =?UTF-8?q?=E7=89=87=E6=9C=BA=E4=B8=8D=E8=83=BD=E6=AD=A3=E7=A1=AE=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=AE=8F=20ssize=5Ft=E7=B1=BB=E5=9E=8B=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/xcmd.c | 44 +++++++++++++++++++++++++------------------- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/src/xcmd.c b/src/xcmd.c index e98a7da..dfb7f2f 100755 --- a/src/xcmd.c +++ b/src/xcmd.c @@ -21,8 +21,8 @@ struct { struct { - ssize_t write_fd; - ssize_t read_fd; + signed int write_fd; + signed int read_fd; int (*get_c)(uint8_t*); int (*put_c)(uint8_t); }io; @@ -67,27 +67,27 @@ struct uint8_t _initOK; } g_xcmder = {0}; -ssize_t file_open(char *name, int is_write, int is_append) __attribute__((weak)); -void file_close(ssize_t fd) __attribute__((weak)); -int file_write(ssize_t fd, const char *str) __attribute__((weak)); -int file_read(ssize_t fd, char *buf, int buflen) __attribute__((weak)); +signed int file_open(char *name, int is_write, int is_append) __attribute__((weak)); +void file_close(signed int fd) __attribute__((weak)); +int file_write(signed int fd, const char *str) __attribute__((weak)); +int file_read(signed int fd, char *buf, int buflen) __attribute__((weak)); -void file_close(ssize_t fd) +void file_close(signed int fd) { } -ssize_t file_open(char *name, int is_write, int is_append) +signed int file_open(char *name, int is_write, int is_append) { return -1; } -int file_write(ssize_t fd, const char *str) +int file_write(signed int fd, const char *str) { return -1; } -int file_read(ssize_t fd, char *buf, int buflen) +int file_read(signed int fd, char *buf, int buflen) { return -1; } @@ -95,15 +95,16 @@ int file_read(ssize_t fd, char *buf, int buflen) static char *xcmd_strpbrk(char*s, const char *delim) //返回s1中第一个满足条件的字符的指针, 并且保留""号内的源格式 { uint8_t flag = 0; - for(uint16_t i=0; s[i]; i++) + uint16_t i,j,k; + for(i=0; s[i]; i++) { - for(uint16_t j=0; delim[j]; j++) + for(j=0; delim[j]; j++) { if(0 == flag) { if(s[i] == '\"') { - for(uint16_t k=i; s[k]; k++) + for(k=i; s[k]; k++) { s[k] = s[k+1]; } @@ -116,7 +117,7 @@ static char *xcmd_strpbrk(char*s, const char *delim) //返回s1中第一个满 { if(s[i] == '\"') { - for(uint16_t k=i; s[k]; k++) + for(k=i; s[k]; k++) { s[k] = s[k+1]; } @@ -188,7 +189,8 @@ static int xcmd_get_param(char* msg, char*delim, char* get[], int max_num) static int xcmd_redirected(int argc, char*argv[]) { - for(int i=1; i<(argc-1); i++) + int i; + for(i=1; i<(argc-1); i++) { if(argv[i][0] == '>') { @@ -361,6 +363,7 @@ static void xcmd_parser(uint8_t byte) void xcmd_put_str(const char *str) { + uint16_t i; if(g_xcmder.io.write_fd != -1) { if(file_write(g_xcmder.io.write_fd, str) != -1) @@ -368,7 +371,7 @@ void xcmd_put_str(const char *str) return; } } - for(uint16_t i=0; str[i]; i++) + for(i=0; str[i]; i++) { g_xcmder.io.put_c(str[i]); }; @@ -386,11 +389,12 @@ void xcmd_print(const char *fmt, ...) void xcmd_display_write(const char* buf, uint16_t len) { + uint16_t i; if(len > XCMD_LINE_MAX_LENGTH) { len = XCMD_LINE_MAX_LENGTH; } - for(uint16_t i=0; ig_xcmder.parser.cursor; i--) + for(i=g_xcmder.parser.byte_num; i>g_xcmder.parser.cursor; i--) { line[i] = line[i-1]; } @@ -445,10 +450,11 @@ void xcmd_display_insert_char(char c) void xcmd_display_delete_char(void) { + uint16_t i; char *line = xcmd_display_get(); if(g_xcmder.parser.cursor > 0) { - for(uint16_t i = g_xcmder.parser.cursor-1; i Date: Sun, 26 Apr 2026 17:44:33 +0800 Subject: [PATCH 2/2] new --- src/xcmd_default_cmds.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/xcmd_default_cmds.c b/src/xcmd_default_cmds.c index 08d7113..aa01791 100755 --- a/src/xcmd_default_cmds.c +++ b/src/xcmd_default_cmds.c @@ -40,7 +40,7 @@ static int cmd_keys(int argc, char* argv[]) static int cmd_logo(int argc, char* argv[]) { - char *log = "\ + char *log = "\r\n\ _ _ ___ __ __ ____ \r\n\ ( \\/ )/ __)( \\/ )( _ \\ \r\n\ ) (( (__ ) ( )(_) )\r\n\ -- Gitee