From c006aaa8a09b80d18e410540544bb73cbff1cdae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Fri, 17 Mar 2023 12:29:07 +0800 Subject: [PATCH] fix: quit --- server.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/server.c b/server.c index 870c10c..d52bcb3 100644 --- a/server.c +++ b/server.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include "config.h" @@ -548,17 +549,24 @@ static int s1_get(threadtimer_t *timer) { //get kanban timer->is_open = 0; close_file(timer); int r = send_all(kanban_path, timer); - if(!strncmp(timer->data, "quit", 4)) { + if(strnstr(timer->data, "quit", timer->numbytes)) { puts("Found last cmd is quit"); + timer->numbytes = 0; return 0; } + for(int i = 0; i < timer->numbytes; i++) { + if(!isdigit(timer->data[i])) { + timer->numbytes -= i; + break; + } + } return r; } } } } int r = close_file_and_send(timer, "null", 4); - if(!strncmp(timer->data, "quit", 4)) { + if(strnstr(timer->data, "quit", timer->numbytes)) { puts("Found last cmd is quit"); return 0; }