@@ -45,7 +45,7 @@ TEST(LlvmLibcWCPNCpyTest, CopyNull) {
45
45
wchar_t *res = LIBC_NAMESPACE::wcpncpy (dest, src, 1 );
46
46
ASSERT_TRUE (dest[0 ] == L' \0 ' );
47
47
ASSERT_TRUE (dest[1 ] == L' b' );
48
- ASSERT_EQ (dest + 1 , res);
48
+ ASSERT_EQ (dest, res);
49
49
}
50
50
51
51
TEST (LlvmLibcWCPNCpyTest, CopyPastSrc) {
@@ -54,7 +54,7 @@ TEST(LlvmLibcWCPNCpyTest, CopyPastSrc) {
54
54
wchar_t *res = LIBC_NAMESPACE::wcpncpy (dest, src, 2 );
55
55
ASSERT_TRUE (dest[0 ] == L' \0 ' );
56
56
ASSERT_TRUE (dest[1 ] == L' \0 ' );
57
- ASSERT_EQ (dest + 2 , res);
57
+ ASSERT_EQ (dest, res);
58
58
}
59
59
60
60
TEST (LlvmLibcWCPNCpyTest, CopyTwoNoNull) {
@@ -72,7 +72,16 @@ TEST(LlvmLibcWCPNCpyTest, CopyTwoWithNull) {
72
72
wchar_t *res = LIBC_NAMESPACE::wcpncpy (dest, src, 2 );
73
73
ASSERT_TRUE (dest[0 ] == L' x' );
74
74
ASSERT_TRUE (dest[1 ] == L' \0 ' );
75
- ASSERT_EQ (dest + 2 , res);
75
+ ASSERT_EQ (dest + 1 , res);
76
+ }
77
+
78
+ TEST (LlvmLibcWCPNCpyTest, CopyAndFill) {
79
+ wchar_t dest[] = {L' a' , L' b' , L' c' };
80
+ wchar_t *res = LIBC_NAMESPACE::wcpncpy (dest, L" x" , 3 );
81
+ ASSERT_TRUE (dest[0 ] == L' x' );
82
+ ASSERT_TRUE (dest[1 ] == L' \0 ' );
83
+ ASSERT_TRUE (dest[2 ] == L' \0 ' );
84
+ ASSERT_EQ (dest + 1 , res);
76
85
}
77
86
78
87
#if defined(LIBC_ADD_NULL_CHECKS) && !defined(LIBC_HAS_SANITIZER)
0 commit comments