Re: [PATCH 1/2] msvcrt/tests: Add scanf tests for leading and trailing dash in scanset.

Will Mainio will.mainio at fastmail.com
Sat Oct 31 13:13:21 CDT 2020


Never mind that, it was simple enough for me to implement.
I submitted a v3 that can handle dashes in any location.

Cheers

On Fri, Oct 30, 2020, at 6:54 PM, Will Mainio wrote:
> Hi Piotr,
> 
> unfortunately I am not very familiar with C so I can't implement that 
> but I can add tests with dashes in various locations.
> Should that go into a v3 or into a separate patch?
> 
> Cheers
> 
> On Fri, Oct 30, 2020, at 1:45 PM, Piotr Caban wrote:
> > Hi Will,
> > 
> > There are more problems with current implementation. The '-' character 
> > can be also added to the set if it's not defining a range even if it's 
> > not the first or last character. You can see it running following test:
> > sscanf("123", "%[1-2-4]s", buf);
> > This format will look for 1-2 range, '-' character and '4' (not for 1-2 
> > range and 2-4 range).
> > 
> > Thanks,
> > Piotr
> > 
> > On 10/30/20 1:23 PM, Will Mainio wrote:
> > > Hi Gijs,
> > > 
> > > I will reorder the patches and submit a v2. Thanks for the heads up.
> > > 
> > > Cheers
> > > 
> > > On Fri, Oct 30, 2020, at 1:00 PM, Gijs Vermeulen wrote:
> > >> Hi Will,
> > >>
> > >> You will either need to reorder your patches or add todo_wine to the ok()'s that are supposed to fail and remove them in your second patch.
> > >>
> > >> Kind regards,
> > >> Gijs
> > >>
> > >>
> > >> On Fri, Oct 30, 2020, 12:39 Will Mainio <will.mainio at fastmail.com> wrote:
> > >>> Signed-off-by: Will Mainio <will.mainio at fastmail.com>
> > >>> ---
> > >>>   dlls/msvcrt/tests/scanf.c | 8 ++++++++
> > >>>   1 file changed, 8 insertions(+)
> > >>>
> > >>> diff --git a/dlls/msvcrt/tests/scanf.c b/dlls/msvcrt/tests/scanf.c
> > >>> index 57d9cc0ba12..4b878e6d64e 100644
> > >>> --- a/dlls/msvcrt/tests/scanf.c
> > >>> +++ b/dlls/msvcrt/tests/scanf.c
> > >>> @@ -186,6 +186,14 @@ static void test_sscanf( void )
> > >>>       ok( ret == 1, "Error with format \"%s\"\n","%*[a-cd-dg-e]%c");
> > >>>       ok( buffer[0] == 'h', "Error with \"abcefgdh\" \"%c\"\n", buffer[0]);
> > >>>
> > >>> +    ret = p_sscanf("-123","%[-0-9]s",buffer);
> > >>> +    ok( ret == 1, "Error with format \"%s\"\n","%[-0-9]s");
> > >>> +    ok( strncmp("-123",buffer,strlen(buffer)) == 0, "Error with \"-123\" \"%s\"\n",buffer);
> > >>> +
> > >>> +    ret = p_sscanf("-321","%[0-9-]s",buffer);
> > >>> +    ok( ret == 1, "Error with format \"%s\"\n","%[0-9-]s");
> > >>> +    ok( strncmp("-321",buffer,strlen(buffer)) == 0, "Error with \"-321\" \"%s\"\n",buffer);
> > >>> +
> > >>>       buffer1[0] = 'b';
> > >>>       ret = p_sscanf("a","%s%s", buffer, buffer1);
> > >>>       ok( ret == 1, "expected 1, got %u\n", ret);
> > >>> -- 
> > >>> 2.28.0
> > >>>
> > >>>
> > > 
> > 
> >
> 
>



More information about the wine-devel mailing list