Skip to content

Commit 08f4b3c

Browse files
committed
Merge branch 'PHP-5.3' into PHP-5.4
2 parents d372b33 + f826ea0 commit 08f4b3c

File tree

1 file changed

+56
-19
lines changed

1 file changed

+56
-19
lines changed

ext/mysqlnd/mysqlnd_charset.c

Lines changed: 56 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -450,20 +450,27 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
450450
{ 6, "hp8", "hp8_english_ci", 1, 1, "", NULL, NULL},
451451
{ 7, "koi8r", "koi8r_general_ci", 1, 1, "", NULL, NULL},
452452
{ 8, "latin1", "latin1_swedish_ci", 1, 1, "", NULL, NULL},
453+
{ 5, "latin1", "latin1_german_ci", 1, 1, "", NULL, NULL}, /* should be after 0x9 because swedish_ci is the default collation */
453454
{ 9, "latin2", "latin2_general_ci", 1, 1, "", NULL, NULL},
455+
{ 2, "latin2", "latin2_czech_cs", 1, 1, "", NULL, NULL}, /* should be after 0x9 because general_ci is the default collation */
454456
{ 10, "swe7", "swe7_swedish_ci", 1, 1, "", NULL, NULL},
455457
{ 11, "ascii", "ascii_general_ci", 1, 1, "", NULL, NULL},
456458
{ 12, "ujis", "ujis_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_ujis, check_mb_ujis},
457459
{ 13, "sjis", "sjis_japanese_ci", 1, 2, "", mysqlnd_mbcharlen_sjis, check_mb_sjis},
458460
{ 16, "hebrew", "hebrew_general_ci", 1, 1, "", NULL, NULL},
461+
{ 17, "filename", "filename", 1, 5, "", NULL, NULL},
459462
{ 18, "tis620", "tis620_thai_ci", 1, 1, "", NULL, NULL},
460463
{ 19, "euckr", "euckr_korean_ci", 1, 2, "", mysqlnd_mbcharlen_euckr, check_mb_euckr},
464+
{ 21, "latin2", "latin2_hungarian_ci", 1, 1, "", NULL, NULL},
465+
{ 27, "latin2", "latin2_croatian_ci", 1, 1, "", NULL, NULL},
461466
{ 22, "koi8u", "koi8u_general_ci", 1, 1, "", NULL, NULL},
462467
{ 24, "gb2312", "gb2312_chinese_ci", 1, 2, "", mysqlnd_mbcharlen_gb2312, check_mb_gb2312},
463468
{ 25, "greek", "greek_general_ci", 1, 1, "", NULL, NULL},
464469
{ 26, "cp1250", "cp1250_general_ci", 1, 1, "", NULL, NULL},
465470
{ 28, "gbk", "gbk_chinese_ci", 1, 2, "", mysqlnd_mbcharlen_gbk, check_mb_gbk},
466471
{ 30, "latin5", "latin5_turkish_ci", 1, 1, "", NULL, NULL},
472+
{ 31, "latin1", "latin1_german2_ci", 1, 1, "", NULL, NULL},
473+
{ 15, "latin1", "latin1_danish_ci", 1, 1, "", NULL, NULL},
467474
{ 32, "armscii8", "armscii8_general_ci", 1, 1, "", NULL, NULL},
468475
{ 33, UTF8_MB3, UTF8_MB3"_general_ci", 1, 3, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
469476
{ 35, "ucs2", "ucs2_general_ci", 2, 2, "UCS-2 Unicode", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
@@ -473,22 +480,11 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
473480
{ 39, "macroman", "macroman_general_ci", 1, 1, "", NULL, NULL},
474481
{ 40, "cp852", "cp852_general_ci", 1, 1, "", NULL, NULL},
475482
{ 41, "latin7", "latin7_general_ci", 1, 1, "", NULL, NULL},
476-
{ 51, "cp1251", "cp1251_general_ci", 1, 1, "", NULL, NULL},
483+
{ 20, "latin7", "latin7_estonian_cs", 1, 1, "", NULL, NULL},
477484
{ 57, "cp1256", "cp1256_general_ci", 1, 1, "", NULL, NULL},
478485
{ 59, "cp1257", "cp1257_general_ci", 1, 1, "", NULL, NULL},
479486
{ 63, "binary", "binary", 1, 1, "", NULL, NULL},
480-
{ 92, "geostd8", "geostd8_general_ci", 1, 1, "", NULL, NULL},
481-
{ 95, "cp932", "cp932_japanese_ci", 1, 2, "", mysqlnd_mbcharlen_cp932, check_mb_cp932},
482487
{ 97, "eucjpms", "eucjpms_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_eucjpms, check_mb_eucjpms},
483-
{ 2, "latin2", "latin2_czech_cs", 1, 1, "", NULL, NULL},
484-
{ 5, "latin1", "latin1_german_ci", 1, 1, "", NULL, NULL},
485-
{ 14, "cp1251", "cp1251_bulgarian_ci", 1, 1, "", NULL, NULL},
486-
{ 15, "latin1", "latin1_danish_ci", 1, 1, "", NULL, NULL},
487-
{ 17, "filename", "filename", 1, 5, "", NULL, NULL},
488-
{ 20, "latin7", "latin7_estonian_cs", 1, 1, "", NULL, NULL},
489-
{ 21, "latin2", "latin2_hungarian_ci", 1, 1, "", NULL, NULL},
490-
{ 23, "cp1251", "cp1251_ukrainian_ci", 1, 1, "", NULL, NULL},
491-
{ 27, "latin2", "latin2_croatian_ci", 1, 1, "", NULL, NULL},
492488
{ 29, "cp1257", "cp1257_lithunian_ci", 1, 1, "", NULL, NULL},
493489
{ 31, "latin1", "latin1_german2_ci", 1, 1, "", NULL, NULL},
494490
{ 34, "cp1250", "cp1250_czech_cs", 1, 1, "", NULL, NULL},
@@ -500,6 +496,9 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
500496
{ 47, "latin1", "latin1_bin", 1, 1, "", NULL, NULL},
501497
{ 48, "latin1", "latin1_general_ci", 1, 1, "", NULL, NULL},
502498
{ 49, "latin1", "latin1_general_cs", 1, 1, "", NULL, NULL},
499+
{ 51, "cp1251", "cp1251_general_ci", 1, 1, "", NULL, NULL},
500+
{ 14, "cp1251", "cp1251_bulgarian_ci", 1, 1, "", NULL, NULL},
501+
{ 23, "cp1251", "cp1251_ukrainian_ci", 1, 1, "", NULL, NULL},
503502
{ 50, "cp1251", "cp1251_bin", 1, 1, "", NULL, NULL},
504503
{ 52, "cp1251", "cp1251_general_cs", 1, 1, "", NULL, NULL},
505504
{ 53, "macroman", "macroman_bin", 1, 1, "", NULL, NULL},
@@ -509,8 +508,8 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
509508
#ifdef USED_TO_BE_SO_BEFORE_MYSQL_5_5
510509
{ 60, "armascii8", "armascii8_bin", 1, 1, "", NULL, NULL},
511510
#endif
512-
{ 60, "utf32", "utf32_general_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
513-
{ 61, "utf32", "utf32_bin", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
511+
/*55*/{ 60, "utf32", "utf32_general_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
512+
/*55*/{ 61, "utf32", "utf32_bin", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
514513
{ 65, "ascii", "ascii_bin", 1, 1, "", NULL, NULL},
515514
{ 66, "cp1250", "cp1250_bin", 1, 1, "", NULL, NULL},
516515
{ 67, "cp1256", "cp1256_bin", 1, 1, "", NULL, NULL},
@@ -528,7 +527,6 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
528527
{ 80, "cp850", "cp850_bin", 1, 1, "", NULL, NULL},
529528
{ 81, "cp852", "cp852_bin", 1, 1, "", NULL, NULL},
530529
{ 82, "swe7", "swe7_bin", 1, 1, "", NULL, NULL},
531-
{ 93, "geostd8", "geostd8_bin", 1, 1, "", NULL, NULL},
532530
{ 83, UTF8_MB3, UTF8_MB3"_bin", 1, 3, "UTF-8 Unicode", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
533531
{ 84, "big5", "big5_bin", 1, 2, "", mysqlnd_mbcharlen_big5, check_mb_big5},
534532
{ 85, "euckr", "euckr_bin", 1, 2, "", mysqlnd_mbcharlen_euckr, check_mb_euckr},
@@ -538,10 +536,14 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
538536
{ 89, "tis620", "tis620_bin", 1, 1, "", NULL, NULL},
539537
{ 90, "ucs2", "ucs2_bin", 2, 2, "UCS-2 Unicode", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
540538
{ 91, "ujis", "ujis_bin", 1, 3, "", mysqlnd_mbcharlen_ujis, check_mb_ujis},
539+
{ 92, "geostd8", "geostd8_general_ci", 1, 1, "", NULL, NULL},
540+
{ 93, "geostd8", "geostd8_bin", 1, 1, "", NULL, NULL},
541541
{ 94, "latin1", "latin1_spanish_ci", 1, 1, "", NULL, NULL},
542+
{ 95, "cp932", "cp932_japanese_ci", 1, 2, "", mysqlnd_mbcharlen_cp932, check_mb_cp932},
542543
{ 96, "cp932", "cp932_bin", 1, 2, "", mysqlnd_mbcharlen_cp932, check_mb_cp932},
543-
{ 99, "cp1250", "cp1250_polish_ci", 1, 1, "", NULL, NULL},
544+
{ 97, "eucjpms", "eucjpms_japanese_ci", 1, 3, "", mysqlnd_mbcharlen_eucjpms, check_mb_eucjpms},
544545
{ 98, "eucjpms", "eucjpms_bin", 1, 3, "", mysqlnd_mbcharlen_eucjpms, check_mb_eucjpms},
546+
{ 99, "cp1250", "cp1250_polish_ci", 1, 1, "", NULL, NULL},
545547
{ 128, "ucs2", "ucs2_unicode_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
546548
{ 129, "ucs2", "ucs2_icelandic_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
547549
{ 130, "ucs2", "ucs2_latvian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
@@ -562,7 +564,35 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
562564
{ 145, "ucs2", "ucs2_esperanto_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
563565
{ 146, "ucs2", "ucs2_hungarian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
564566
{ 147, "ucs2", "ucs2_sinhala_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
565-
{ 149, "ucs2", "ucs2_croatian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2}, /* MDB */
567+
{ 148, "ucs2", "ucs2_german2_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
568+
{ 149, "ucs2", "ucs2_croatian_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
569+
{ 150, "ucs2", "ucs2_unicode_520_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
570+
{ 151, "ucs2", "ucs2_vietnamese_ci", 2, 2, "", mysqlnd_mbcharlen_ucs2, check_mb_ucs2},
571+
572+
/*56*/{160, "utf32", "utf32_unicode_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
573+
/*56*/{161, "utf32", "utf32_icelandic_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
574+
/*56*/{162, "utf32", "utf32_latvian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
575+
/*56*/{163, "utf32", "utf32_romanian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
576+
/*56*/{164, "utf32", "utf32_slovenian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
577+
/*56*/{165, "utf32", "utf32_polish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
578+
/*56*/{166, "utf32", "utf32_estonian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
579+
/*56*/{167, "utf32", "utf32_spanish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
580+
/*56*/{168, "utf32", "utf32_swedish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
581+
/*56*/{169, "utf32", "utf32_turkish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
582+
/*56*/{170, "utf32", "utf32_czech_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
583+
/*56*/{171, "utf32", "utf32_danish_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
584+
/*56*/{172, "utf32", "utf32_lithuanian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
585+
/*56*/{173, "utf32", "utf32_slovak_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
586+
/*56*/{174, "utf32", "utf32_spanish2_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
587+
/*56*/{175, "utf32", "utf32_roman_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
588+
/*56*/{176, "utf32", "utf32_persian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
589+
/*56*/{177, "utf32", "utf32_esperanto_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
590+
/*56*/{178, "utf32", "utf32_hungarian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
591+
/*56*/{179, "utf32", "utf32_sinhala_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
592+
/*56*/{180, "utf32", "utf32_german2_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
593+
/*56*/{181, "utf32", "utf32_croatian_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
594+
/*56*/{182, "utf32", "utf32_unicode_520_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
595+
/*56*/{183, "utf32", "utf32_vietnamese_ci", 4, 4, "UTF-32 Unicode", mysqlnd_mbcharlen_utf32, check_mb_utf32},
566596

567597
{ 192, UTF8_MB3, UTF8_MB3"_general_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
568598
{ 193, UTF8_MB3, UTF8_MB3"_icelandic_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
@@ -571,7 +601,7 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
571601
{ 196, UTF8_MB3, UTF8_MB3"_slovenian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
572602
{ 197, UTF8_MB3, UTF8_MB3"_polish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
573603
{ 198, UTF8_MB3, UTF8_MB3"_estonian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
574-
{ 119, UTF8_MB3, UTF8_MB3"_spanish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
604+
{ 199, UTF8_MB3, UTF8_MB3"_spanish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
575605
{ 200, UTF8_MB3, UTF8_MB3"_swedish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
576606
{ 201, UTF8_MB3, UTF8_MB3"_turkish_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
577607
{ 202, UTF8_MB3, UTF8_MB3"_czech_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
@@ -584,7 +614,10 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
584614
{ 209, UTF8_MB3, UTF8_MB3"_esperanto_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
585615
{ 210, UTF8_MB3, UTF8_MB3"_hungarian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
586616
{ 211, UTF8_MB3, UTF8_MB3"_sinhala_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
587-
{ 213, UTF8_MB3, UTF8_MB3"_croatian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid}, /*MDB*/
617+
{ 211, UTF8_MB3, UTF8_MB3"_german2_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
618+
{ 213, UTF8_MB3, UTF8_MB3"_croatian_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
619+
{ 214, UTF8_MB3, UTF8_MB3"_unicode_520_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
620+
{ 215, UTF8_MB3, UTF8_MB3"_vietnamese_ci", 1, 3, "", mysqlnd_mbcharlen_utf8mb3, check_mb_utf8mb3_valid},
588621

589622
{ 224, UTF8_MB4, UTF8_MB4"_unicode_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
590623
{ 225, UTF8_MB4, UTF8_MB4"_icelandic_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
@@ -606,6 +639,10 @@ const MYSQLND_CHARSET mysqlnd_charsets[] =
606639
{ 241, UTF8_MB4, UTF8_MB4"_esperanto_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
607640
{ 242, UTF8_MB4, UTF8_MB4"_hungarian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
608641
{ 243, UTF8_MB4, UTF8_MB4"_sinhala_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
642+
{ 244, UTF8_MB4, UTF8_MB4"_german2_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
643+
{ 245, UTF8_MB4, UTF8_MB4"_croatian_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
644+
{ 246, UTF8_MB4, UTF8_MB4"_unicode_520_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
645+
{ 247, UTF8_MB4, UTF8_MB4"_vietnamese_ci", 1, 4, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
609646

610647
{ 254, UTF8_MB3, UTF8_MB3"_general_cs", 1, 3, "", mysqlnd_mbcharlen_utf8, check_mb_utf8_valid},
611648
{ 0, NULL, NULL, 0, 0, NULL, NULL, NULL}

0 commit comments

Comments
 (0)