summaryrefslogtreecommitdiffhomepage
path: root/src/u16_wcsrchr.c
blob: 387854e63f2441e6b84acfbd758cdb76bb7f6aa7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*******************************************************************/
/*  u16ports: u16 variants of wide character string functions.     */
/*  Copyright (C) 2017  Z. Gilboa                                  */
/*  Released under the Standard MIT License; see COPYING.U16PORTS. */
/*******************************************************************/

#include <stdint.h>
#include <u16ports/u16ports.h>

uint16_t * u16_wcsrchr(const uint16_t * src, uint16_t code)
{
	const uint16_t * wch;

	wch = src + u16_wcslen(src);

	if (!code)
		return (uint16_t *)wch;

	for (--wch; wch>=src; wch--)
		if (*wch == code)
			return (uint16_t *)wch;

	return 0;
}