change: decode and print solve/unsolve name conflicts

laumann
Jul 3, 2023, 7:44 PM
2LYNPDBTIKRIG2MJSCNGFW3Y2CBWCQMYWGR4PUEVB3G3TCCPMCPQC

Dependencies

  • [2] O7XAUFM6 change: decode and print {,un}solve order conflicts
  • [*] JAGXXSR7 change: initial work on decoding hunks
  • [*] JVU3TTT5 all: switch away from typedefing anonymous structs
  • [*] ZKAOPMCH change: Implement decoding of edits, atoms, positions, among others
  • [*] Q7TKZCJP Add initial support for reading the offsets from a (fixed) change
  • [*] 33ZXTRXR change: decode and print file deletions
  • [*] NEORNIZE change: decode and print file moves

Change contents

  • edit in hunk.h at line 74
    [2.150]
    [5.899]
    };
    struct solvenameconflict {
    struct atom name;
    str path;
    };
    struct unsolvenameconflict {
    struct atom name;
    str path;
  • edit in hunk.h at line 97
    [2.251]
    [6.417]
    struct solvenameconflict solvenameconflict;
    struct unsolvenameconflict unsolvenameconflict;
  • edit in change.c at line 382
    [2.640]
    [8.344]
    );
    break;
    case SOLVE_NAME_CONFLICT:
    change_decode_atom(
    binstat, &bhunk->solvenameconflict.name
    );
    slen = bincode_getu64(binstat);
    bhunk->solvenameconflict.path =
    bincode_getstr(binstat, slen);
    break;
    case UNSOLVE_NAME_CONFLICT:
    change_decode_atom(
    binstat, &bhunk->unsolvenameconflict.name
  • edit in change.c at line 396
    [8.350]
    [9.442]
    slen = bincode_getu64(binstat);
    bhunk->unsolvenameconflict.path =
    bincode_getstr(binstat, slen);
  • edit in change.c at line 773
    [2.981]
    [8.438]
    break;
    }
    case SOLVE_NAME_CONFLICT: {
    struct solvenameconflict *s = &hunk->solvenameconflict;
    /* FIXME: get */
    printf(" in %s\n", s->path);
    break;
    }
    case UNSOLVE_NAME_CONFLICT: {
    struct unsolvenameconflict *s =
    &hunk->unsolvenameconflict;
    printf(" in %s\n", s->path);