Subversion Repositories HelenOS

Rev

Rev 4281 | Rev 4472 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4281 Rev 4312
Line 591... Line 591...
591
 */
591
 */
592
const char *str_chr(const char *str, wchar_t ch)
592
const char *str_chr(const char *str, wchar_t ch)
593
{
593
{
594
    wchar_t acc;
594
    wchar_t acc;
595
    size_t off = 0;
595
    size_t off = 0;
-
 
596
    size_t last = 0;
596
   
597
   
597
    while ((acc = str_decode(str, &off, STR_NO_LIMIT)) != 0) {
598
    while ((acc = str_decode(str, &off, STR_NO_LIMIT)) != 0) {
598
        if (acc == ch)
599
        if (acc == ch)
599
            return (str + off);
600
            return (str + last);
-
 
601
        last = off;
600
    }
602
    }
601
   
603
   
602
    return NULL;
604
    return NULL;
603
}
605
}
604
 
606
 
Line 611... Line 613...
611
 */
613
 */
612
const char *str_rchr(const char *str, wchar_t ch)
614
const char *str_rchr(const char *str, wchar_t ch)
613
{
615
{
614
    wchar_t acc;
616
    wchar_t acc;
615
    size_t off = 0;
617
    size_t off = 0;
-
 
618
    size_t last = 0;
616
    char *res;
619
    char *res = NULL;
617
 
620
   
618
    res = NULL;
-
 
619
    while ((acc = str_decode(str, &off, STR_NO_LIMIT)) != 0) {
621
    while ((acc = str_decode(str, &off, STR_NO_LIMIT)) != 0) {
620
        if (acc == ch)
622
        if (acc == ch)
621
            res = (str + off);
623
            res = (str + last);
-
 
624
        last = off;
622
    }
625
    }
623
 
626
   
624
    return res;
627
    return res;
625
}
628
}
626
 
629
 
627
/** Insert a wide character into a wide string.
630
/** Insert a wide character into a wide string.
628
 *
631
 *