CE change environment variables syntax, sdutil Add help command
All checks were successful
Build ISO image / build-and-deploy (push) Successful in 3m26s
Build documentation / build-and-deploy (push) Successful in 3m14s

This commit is contained in:
2026-03-27 22:31:32 +01:00
parent 2d7f019844
commit 69f063198a
3 changed files with 19 additions and 9 deletions

View File

@@ -424,20 +424,24 @@ static void execute_cmd (struct ast_cmd* cmd, struct context* context) {
int pgid = get_procgroup (pid); int pgid = get_procgroup (pid);
for (int i = 0; i < cmd->arg_count; i++) { int i = 0;
while (i < cmd->arg_count) {
char* arg = cmd->args[i]; char* arg = cmd->args[i];
char *key, *value; char *key, *value;
char* sep = strchr (arg, '='); if (arg[0] == '-') {
key = &arg[1];
if (sep != NULL) { if (i < cmd->arg_count - 1) {
*sep = '\0'; value = cmd->args[++i];
} else {
key = arg; value = "yes";
value = sep + 1; }
env_set (pgid, key, value, strlen (value) + 1); env_set (pgid, key, value, strlen (value) + 1);
} }
i++;
} }
struct cmd_write_proc_ctx wpctx = {.pgid = pgid, .cancel_pid = pid}; struct cmd_write_proc_ctx wpctx = {.pgid = pgid, .cancel_pid = pid};

View File

@@ -3,8 +3,8 @@
#include <list.h> #include <list.h>
#define TOKEN_MAX 64 #define TOKEN_MAX 128
#define CMD_ARGS_MAX 64 #define CMD_ARGS_MAX 128
#define TOKEN_CLASS_OPAREN 0 #define TOKEN_CLASS_OPAREN 0
#define TOKEN_CLASS_CPAREN 1 #define TOKEN_CLASS_CPAREN 1

View File

@@ -182,6 +182,12 @@ void app_main (void) {
char devnamebuf[64]; char devnamebuf[64];
memset (devnamebuf, 0, sizeof (devnamebuf)); memset (devnamebuf, 0, sizeof (devnamebuf));
if (env_get (process_get_pgid (), "help", (void*)commandbuf, sizeof (commandbuf)) == ST_OK) {
mprintf ("sdutil -C command -dev device_key\n");
mprintf ("commands: part_dos, list_part_dos, format_fat32, format_fat16\n");
return;
}
if (env_get (process_get_pgid (), "C", (void*)commandbuf, sizeof (commandbuf)) != ST_OK) { if (env_get (process_get_pgid (), "C", (void*)commandbuf, sizeof (commandbuf)) != ST_OK) {
mprintf ("ERROR C=???. No command provided\n"); mprintf ("ERROR C=???. No command provided\n");
return; return;