X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fserver%2Fgdb_server.c;h=ea82114081dd1d6bd3f714fab77966bcd6d9712a;hb=32c4c18045599ddfed36f52b276166ce932b1bf7;hp=6729df3a3387813defeebe0c4cd2d054bc749790;hpb=94d64ccaebd3df17f5873c076fc08ca97088cb1e;p=fw%2Fopenocd diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c index 6729df3a3..ea8211408 100644 --- a/src/server/gdb_server.c +++ b/src/server/gdb_server.c @@ -1352,6 +1352,12 @@ static int gdb_read_memory_packet(struct connection *connection, len = strtoul(separator + 1, NULL, 16); + if (!len) { + LOG_WARNING("invalid read memory packet received (len == 0)"); + gdb_put_packet(connection, NULL, 0); + return ERROR_OK; + } + buffer = malloc(len); LOG_DEBUG("addr: 0x%8.8" PRIx32 ", len: 0x%8.8" PRIx32 "", addr, len); @@ -2199,6 +2205,7 @@ static int gdb_target_description_supported(struct target *target, int *supporte struct reg **reg_list = NULL; int reg_list_size = 0; int feature_list_size = 0; + char **features = NULL; retval = target_get_gdb_reg_list(target, ®_list, ®_list_size, REG_CLASS_ALL); @@ -2212,7 +2219,6 @@ static int gdb_target_description_supported(struct target *target, int *supporte goto error; } - char **features = NULL; /* Get a list of available target registers features */ retval = get_reg_features_list(target, &features, &feature_list_size, reg_list, reg_list_size); if (retval != ERROR_OK) {