Ticket #1053: 0001-add-client-name-option.patch

File 0001-add-client-name-option.patch, 1.9 KB (added by egasimus, 5 years ago)
  • jalv/src/jalv_console.c

    From 13a7cc50e0d3b1d38847e1573ebe1f4ccb5ed77a Mon Sep 17 00:00:00 2001
    From: Adam Avramov <fallenblood@gmail.com>
    Date: Sat, 16 May 2015 05:42:27 +0300
    Subject: [PATCH 3/5] Add option for setting client name (not honored yet)
    
    ---
     jalv/src/jalv_console.c  | 21 +++++++++++++++++++++
     jalv/src/jalv_internal.h |  2 ++
     2 files changed, 23 insertions(+)
    
    diff --git a/jalv/src/jalv_console.c b/jalv/src/jalv_console.c
    index 0632098..4657ac7 100644
    a b jalv_init(int* argc, char*** argv, JalvOptions* opts) 
    101101            opts->controls[n_controls]     = NULL;
    102102        } else if ((*argv)[a][1] == 'd') {
    103103            opts->dump = true;
     104        } else if ((*argv)[a][1] == 'n' ){
     105            if (opts->name) {
     106                fprintf(stderr, "Client name is already %s, ignoring %s", opts->name, (*argv)[a]);
     107                continue;
     108            }
     109            if (++a == *argc) {
     110                fprintf(stderr, "Missing argument for -n\n");
     111                return 1;
     112            }
     113            opts->name = jalv_strdup((*argv)[a]);
     114        } else if ((*argv)[a][1] == 'N' ){
     115            if (opts->name) {
     116                fprintf(stderr, "Client name is already %s, ignoring %s", opts->name, (*argv)[a]);
     117                continue;
     118            }
     119            if (++a == *argc) {
     120                fprintf(stderr, "Missing argument for -N\n");
     121                return 1;
     122            }
     123            opts->name = jalv_strdup((*argv)[a]);
     124            opts->name_exact = 1;
    104125        } else {
    105126            fprintf(stderr, "Unknown option %s\n", (*argv)[a]);
    106127            return print_usage((*argv)[0], true);
  • jalv/src/jalv_internal.h

    diff --git a/jalv/src/jalv_internal.h b/jalv/src/jalv_internal.h
    index 31eb69b..1087d14 100644
    a b typedef struct { 
    8585} ControlChange;
    8686
    8787typedef struct {
     88    char*    name;              ///< Client name
     89    int      name_exact;        ///< Exit if name is taken
    8890    char*    uuid;              ///< Session UUID
    8991    char*    load;              ///< Path for state to load
    9092    char**   controls;          ///< Control values