diff --git a/handle.c b/handle.c index 0a1dedb..d0236fd 100644 --- a/handle.c +++ b/handle.c @@ -1018,6 +1018,9 @@ static int compar(const void *cmd, const void *_handler) { void handle(struct Message msg) { if (!msg.cmd) return; + if (msg.tags[TagPos]) { + self.pos = strtoull(msg.tags[TagPos], NULL, 10); + } const struct Handler *handler = bsearch( msg.cmd, Handlers, ARRAY_LEN(Handlers), sizeof(*handler), compar ); @@ -1026,7 +1029,4 @@ void handle(struct Message msg) { } else if (strcmp(msg.cmd, "400") >= 0 && strcmp(msg.cmd, "599") <= 0) { handleErrorGeneric(&msg); } - if (msg.tags[TagPos]) { - self.pos = strtoull(msg.tags[TagPos], NULL, 10); - } }