Michael is right, this patch should fix the issue.

2009/10/30 David Brownell <davi...@pacbell.net>

> On Thursday 29 October 2009, Michael Roth wrote:
> > The code works like follow (N = bit_len):
> >
> >       N       -1      %4      2<<     -1      ~ (binary)
> >       --------------------------------------------------
> >       1       0       0       2       1       1111 1110
> >       2       1       1       4       3       1111 1100
> >       3       2       2       8       7       1111 1000
> >       4       3       3       16      15      1111 0000
> >       5       4       0       2       1       1111 1110
> >       6       5       1       4       3       1111 1100
> >       7       6       2       8       7       1111 1000
> >       8       7       3       16      15      1111 0000
> >       ...     ...     ...     ...     ...     ...
> >
> > Signed-off-by: Michael Roth <mr...@nessie.de>
>
> Looks like a nice fix, and at least the comment explains
> how it's supposed to work.  ;)
>
> Did you verify against the test case from the bug report?
> Sure looks to me as if it's got to have fixed that...
>
> I'll merge, and combine with a fix for the spelling error,
> unless someone tells me that testcase fails.
>
> > ---
> >  src/svf/svf.c |    2 +-
> >  1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/src/svf/svf.c b/src/svf/svf.c
> > index 276a374..54e2a26 100644
> > --- a/src/svf/svf.c
> > +++ b/src/svf/svf.c
> > @@ -685,7 +685,7 @@ static int svf_copy_hexstring_to_binary(char *str,
> uint8_t **bin, int orig_bit_l
> >               str_len--;
> >
> >       // check valid
> > -     if (str_len > 0 || (ch & ~((1 << (4 - (bit_len % 4))) - 1)) != 0)
> > +     if (str_len > 0 || (ch & ~((2 << ((bit_len - 1) % 4)) - 1)) != 0)
> >       {
> >               LOG_ERROR("value execede length");
> >               return ERROR_FAIL;
> > --
> > 1.6.4.4
> >
> >
>
>
>


-- 
Best Regards, SimonQian
http://www.SimonQian.com <http://www.simonqian.com/>
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to