X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fjtag%2Fzy1000.c;h=5ec1d8adbd197d957eb520f38f2ed897db685bc0;hp=a50ed529c8b6990c328c2cd623631f4e36222001;hb=e3462b228ce9533b6e7989361f9c4090043a8aa4;hpb=cb434c21af5066899c5013a3a3490471f91d4b43 diff --git a/src/jtag/zy1000.c b/src/jtag/zy1000.c index a50ed529c8..5ec1d8adbd 100644 --- a/src/jtag/zy1000.c +++ b/src/jtag/zy1000.c @@ -501,6 +501,11 @@ int interface_jtag_add_ir_scan(int num_fields, scan_field_t *fields, enum tap_st int pause=i==(jtag_num_devices-1); int found = 0; device = jtag_get_device(i); + if (device==NULL) + { + return ERROR_FAIL; + } + scan_size = device->ir_length; /* search the list */ @@ -521,7 +526,7 @@ int interface_jtag_add_ir_scan(int num_fields, scan_field_t *fields, enum tap_st scanFields(1, fields+j, TAP_SI, pause); /* update device information */ - buf_cpy(fields[j].out_value, jtag_get_device(i)->cur_instr, scan_size); + buf_cpy(fields[j].out_value, device->cur_instr, scan_size); device->bypass = 0; break; @@ -539,7 +544,7 @@ int interface_jtag_add_ir_scan(int num_fields, scan_field_t *fields, enum tap_st tmp.num_bits = scan_size; scanFields(1, &tmp, TAP_SI, pause); /* update device information */ - buf_cpy(tmp.out_value, jtag_get_device(i)->cur_instr, scan_size); + buf_cpy(tmp.out_value, device->cur_instr, scan_size); device->bypass = 1; } }