diff --git a/0008-fix-echo-a.z.patch b/0008-fix-echo-a.z.patch new file mode 100644 index 0000000000000000000000000000000000000000..2c5471de5900291274e8b0cbaa2b62fcb9473d3c --- /dev/null +++ b/0008-fix-echo-a.z.patch @@ -0,0 +1,36 @@ +From 35f29adb96c082cd94ec0c72c62556b4fde1e05c Mon Sep 17 00:00:00 2001 +From: wangmengc +Date: Fri, 13 Dec 2024 17:15:50 +0800 +Subject: [PATCH] fix echo {a..z} + +--- + r_braces/src/lib.rs | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/r_braces/src/lib.rs b/r_braces/src/lib.rs +index ee83ac1..d36ff1f 100644 +--- a/r_braces/src/lib.rs ++++ b/r_braces/src/lib.rs +@@ -378,7 +378,7 @@ pub unsafe extern "C" fn brace_expand( + loop { + if *amble.offset(j as isize) as libc::c_int == 0 as libc::c_int { + tack = expand_seqterm (amble, alen); +- if tack.is_null() { ++ if !tack.is_null() { + break; + } + else if !text.offset((i+1) as isize).is_null() { +@@ -692,7 +692,9 @@ unsafe extern "C" fn expand_seqterm( + lhs = substring(text, 0 as libc::c_int, lhs_l); + rhs = substring( + text, +- (lhs_l + std::mem::size_of::<[libc::c_char; 3]> as libc::c_int - 1 as libc::c_int ), ++ (lhs_l as libc::c_ulong) ++ .wrapping_add(::std::mem::size_of::<[libc::c_char; 3]>() as libc::c_ulong) ++ .wrapping_sub(1 as libc::c_int as libc::c_ulong) as libc::c_int, + tlen as libc::c_int, + ); + if *lhs.offset(0 as libc::c_int as isize) as libc::c_int == 0 as libc::c_int +-- +2.39.3 + diff --git a/0009-fix-type-return-error.patch b/0009-fix-type-return-error.patch new file mode 100644 index 0000000000000000000000000000000000000000..c135976af204e94881e887c428bd72649c68b07a --- /dev/null +++ b/0009-fix-type-return-error.patch @@ -0,0 +1,38 @@ +From 7af7b30f2dc162ff4999a5c0e11132796f62b0be Mon Sep 17 00:00:00 2001 +From: wangmengc +Date: Fri, 13 Dec 2024 17:35:33 +0800 +Subject: [PATCH] fix type return error + +--- + builtins_rust/type/src/lib.rs | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/builtins_rust/type/src/lib.rs b/builtins_rust/type/src/lib.rs +index 4940fae..c1b470e 100644 +--- a/builtins_rust/type/src/lib.rs ++++ b/builtins_rust/type/src/lib.rs +@@ -555,17 +555,16 @@ pub unsafe extern "C" fn r_type_builtin(mut list: *mut WordList) -> i32 { + sh_notfound((*(*list).word).word); + } + } +- any_failed = found + any_failed; +- let _ = any_failed == 0; +- // (any_failed += found) == 0; ++ ++ any_failed += (found == 0 as libc::c_int) as libc::c_int; + unsafe { + list = (*list).next; + } + } + if any_failed == 0 { +- EXECUTION_SUCCESS!(); ++ opt = EXECUTION_SUCCESS!(); + } else { +- EXECUTION_FAILURE!(); ++ opt = EXECUTION_FAILURE!(); + } + return unsafe { sh_chkwrite(opt) }; + } +-- +2.39.3 + diff --git a/0010-fix-coproc-command-error.patch b/0010-fix-coproc-command-error.patch new file mode 100644 index 0000000000000000000000000000000000000000..c49d03708cb2606e30764fab1ec6effd82c575b2 --- /dev/null +++ b/0010-fix-coproc-command-error.patch @@ -0,0 +1,34 @@ +From 963b01517eb7ff9823987643515d0818ad8e037c Mon Sep 17 00:00:00 2001 +From: wangmengc +Date: Thu, 13 Mar 2025 14:55:55 +0800 +Subject: [PATCH] fix coproc command error + +--- + r_print_cmd/src/lib.rs | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/r_print_cmd/src/lib.rs b/r_print_cmd/src/lib.rs +index fee41ed..ffdded9 100644 +--- a/r_print_cmd/src/lib.rs ++++ b/r_print_cmd/src/lib.rs +@@ -185,14 +185,14 @@ unsafe fn make_command_string_internal(command:*mut COMMAND) + indent(indentation); + } + +- if (*command).flags != 0 && CMD_TIME_PIPELINE != 0{ ++ if (*command).flags & CMD_TIME_PIPELINE as i32 != 0{ + cprintf(b"time \0" as *const u8 as *const c_char); +- if (*command).flags != 0 && CMD_TIME_POSIX != 0{ ++ if (*command).flags & CMD_TIME_POSIX as i32 != 0{ + cprintf(b"-p \0" as *const u8 as *const c_char); + } + } + +- if (*command).flags != 0 && CMD_INVERT_RETURN != 0{ ++ if (*command).flags & CMD_INVERT_RETURN as i32 != 0{ + cprintf(b"! \0" as *const u8 as *const c_char); + } + // (*command).type_ = 11; +-- +2.39.3 + diff --git a/0011-fix-arch-display.patch b/0011-fix-arch-display.patch new file mode 100644 index 0000000000000000000000000000000000000000..5877385e1b64f9a0cfed8ea2a19f5ef539ae5823 --- /dev/null +++ b/0011-fix-arch-display.patch @@ -0,0 +1,34 @@ +From b4d841e78086b7b5c4aa42d7b7f49520a5ca4e8f Mon Sep 17 00:00:00 2001 +From: wangmengc +Date: Wed, 5 Mar 2025 11:29:45 +0800 +Subject: [PATCH] fix arch display + +--- + r_shell/src/lib.rs | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/r_shell/src/lib.rs b/r_shell/src/lib.rs +index 38b6207..897302e 100644 +--- a/r_shell/src/lib.rs ++++ b/r_shell/src/lib.rs +@@ -14,7 +14,7 @@ extern "C" { + static mut rl_deprep_term_function: Option::; + static mut rl_readline_state: libc::c_ulong; + +- ++ fn get_mach_type() -> *mut libc::c_char; + fn getpwuid(__uid: __uid_t) -> *mut passwd; + fn endpwent(); + fn sh_setlinebuf(_: *mut FILE) -> libc::c_int; +@@ -1901,7 +1901,7 @@ unsafe extern "C" fn show_shell_usage(fp: *mut FILE, extra: libc::c_int) { + fp, + b"utshell, version %s-(%s)\n\0" as *const u8 as *const libc::c_char, + shell_version_string(), +- MACHTYPE!(), ++ get_mach_type(), + ); + } + fprintf( +-- +2.39.3 + diff --git a/utshell.spec b/utshell.spec index afb1352ccbf0491adae82a97e65ca2c543385422..aa24a40fc9b2ceb1605f40d488ebb35dfca9494a 100644 --- a/utshell.spec +++ b/utshell.spec @@ -6,7 +6,7 @@ Version: %{baseversion}%{patchleveltag} Name: utshell Summary: The utshell respect Bash -Release: 1%{?dist} +Release: 4%{?dist} License: GPLv3+ Source0: utshell-%{baseversion}.tar.gz @@ -19,6 +19,10 @@ Patch0004: 0004-fix-complete-p-no-display.patch Patch0005: 0005-fix-translation-files-correlation.patch Patch0006: 0006-fix-select-error.patch Patch0007: 0007-fix-compile-error-on-riscv64.patch +Patch0008: 0008-fix-echo-a.z.patch +Patch0009: 0009-fix-type-return-error.patch +Patch0010: 0010-fix-coproc-command-error.patch +Patch0011: 0011-fix-arch-display.patch # Other patches # We don't want to add '/etc:/usr/etc' in standard utils path. @@ -135,7 +139,16 @@ end %{_includedir}/%{name} %changelog -* Fri Jun 21 2024 wangmeng - 0.5.1 +* Wed Mar 5 2025 wangmeng - 0.5.0-4 +- feat: 修复coproc命令错误问题 +- feat: 修复utshell --help 显示信息问题 + +* Fri Dec 13 2024 wangmeng - 0.5.0-3 +- feat: add patch 0003-fix-echo-a.z.patch +- feat: add patch 0004-fix-type-return-error.patch +- 修复echo {a..z} 执行错误和type命令返回值错误 + +* Fri Jun 21 2024 wangmeng - 0.5.0-1 - fix:IA4DBK Change the verson number to be consistent with other software packages * Thu May 23 2024 wangyaoyong - 0.5.0-0.4