mirror of
https://github.com/php/php-src.git
synced 2024-10-01 06:46:08 +00:00
1b2d14c5e1
setting). #This fix (for g/G/k/H modes) is done at a different level than that for the #modes e/E/f/F, at a bit higher level and therefore with less coverage. I #chose this because it addresses the problem where it is -- the calling function #that passes a buffer too small to php_gcvt.
590 lines
7.7 KiB
PHP
590 lines
7.7 KiB
PHP
--TEST--
|
|
Bug #54055: PHP crashes when executing strval when precision setting is very high
|
|
--FILE--
|
|
<?php
|
|
for($i = 495; $i <= 1074; $i++) {
|
|
ini_set('precision', $i);
|
|
echo "$i: len=", strlen(strval(-1 * pow(2, -1074))), "\n";
|
|
}
|
|
--EXPECT--
|
|
495: len=502
|
|
496: len=503
|
|
497: len=504
|
|
498: len=505
|
|
499: len=506
|
|
500: len=507
|
|
501: len=507
|
|
502: len=507
|
|
503: len=507
|
|
504: len=507
|
|
505: len=507
|
|
506: len=507
|
|
507: len=507
|
|
508: len=507
|
|
509: len=507
|
|
510: len=507
|
|
511: len=507
|
|
512: len=507
|
|
513: len=507
|
|
514: len=507
|
|
515: len=507
|
|
516: len=507
|
|
517: len=507
|
|
518: len=507
|
|
519: len=507
|
|
520: len=507
|
|
521: len=507
|
|
522: len=507
|
|
523: len=507
|
|
524: len=507
|
|
525: len=507
|
|
526: len=507
|
|
527: len=507
|
|
528: len=507
|
|
529: len=507
|
|
530: len=507
|
|
531: len=507
|
|
532: len=507
|
|
533: len=507
|
|
534: len=507
|
|
535: len=507
|
|
536: len=507
|
|
537: len=507
|
|
538: len=507
|
|
539: len=507
|
|
540: len=507
|
|
541: len=507
|
|
542: len=507
|
|
543: len=507
|
|
544: len=507
|
|
545: len=507
|
|
546: len=507
|
|
547: len=507
|
|
548: len=507
|
|
549: len=507
|
|
550: len=507
|
|
551: len=507
|
|
552: len=507
|
|
553: len=507
|
|
554: len=507
|
|
555: len=507
|
|
556: len=507
|
|
557: len=507
|
|
558: len=507
|
|
559: len=507
|
|
560: len=507
|
|
561: len=507
|
|
562: len=507
|
|
563: len=507
|
|
564: len=507
|
|
565: len=507
|
|
566: len=507
|
|
567: len=507
|
|
568: len=507
|
|
569: len=507
|
|
570: len=507
|
|
571: len=507
|
|
572: len=507
|
|
573: len=507
|
|
574: len=507
|
|
575: len=507
|
|
576: len=507
|
|
577: len=507
|
|
578: len=507
|
|
579: len=507
|
|
580: len=507
|
|
581: len=507
|
|
582: len=507
|
|
583: len=507
|
|
584: len=507
|
|
585: len=507
|
|
586: len=507
|
|
587: len=507
|
|
588: len=507
|
|
589: len=507
|
|
590: len=507
|
|
591: len=507
|
|
592: len=507
|
|
593: len=507
|
|
594: len=507
|
|
595: len=507
|
|
596: len=507
|
|
597: len=507
|
|
598: len=507
|
|
599: len=507
|
|
600: len=507
|
|
601: len=507
|
|
602: len=507
|
|
603: len=507
|
|
604: len=507
|
|
605: len=507
|
|
606: len=507
|
|
607: len=507
|
|
608: len=507
|
|
609: len=507
|
|
610: len=507
|
|
611: len=507
|
|
612: len=507
|
|
613: len=507
|
|
614: len=507
|
|
615: len=507
|
|
616: len=507
|
|
617: len=507
|
|
618: len=507
|
|
619: len=507
|
|
620: len=507
|
|
621: len=507
|
|
622: len=507
|
|
623: len=507
|
|
624: len=507
|
|
625: len=507
|
|
626: len=507
|
|
627: len=507
|
|
628: len=507
|
|
629: len=507
|
|
630: len=507
|
|
631: len=507
|
|
632: len=507
|
|
633: len=507
|
|
634: len=507
|
|
635: len=507
|
|
636: len=507
|
|
637: len=507
|
|
638: len=507
|
|
639: len=507
|
|
640: len=507
|
|
641: len=507
|
|
642: len=507
|
|
643: len=507
|
|
644: len=507
|
|
645: len=507
|
|
646: len=507
|
|
647: len=507
|
|
648: len=507
|
|
649: len=507
|
|
650: len=507
|
|
651: len=507
|
|
652: len=507
|
|
653: len=507
|
|
654: len=507
|
|
655: len=507
|
|
656: len=507
|
|
657: len=507
|
|
658: len=507
|
|
659: len=507
|
|
660: len=507
|
|
661: len=507
|
|
662: len=507
|
|
663: len=507
|
|
664: len=507
|
|
665: len=507
|
|
666: len=507
|
|
667: len=507
|
|
668: len=507
|
|
669: len=507
|
|
670: len=507
|
|
671: len=507
|
|
672: len=507
|
|
673: len=507
|
|
674: len=507
|
|
675: len=507
|
|
676: len=507
|
|
677: len=507
|
|
678: len=507
|
|
679: len=507
|
|
680: len=507
|
|
681: len=507
|
|
682: len=507
|
|
683: len=507
|
|
684: len=507
|
|
685: len=507
|
|
686: len=507
|
|
687: len=507
|
|
688: len=507
|
|
689: len=507
|
|
690: len=507
|
|
691: len=507
|
|
692: len=507
|
|
693: len=507
|
|
694: len=507
|
|
695: len=507
|
|
696: len=507
|
|
697: len=507
|
|
698: len=507
|
|
699: len=507
|
|
700: len=507
|
|
701: len=507
|
|
702: len=507
|
|
703: len=507
|
|
704: len=507
|
|
705: len=507
|
|
706: len=507
|
|
707: len=507
|
|
708: len=507
|
|
709: len=507
|
|
710: len=507
|
|
711: len=507
|
|
712: len=507
|
|
713: len=507
|
|
714: len=507
|
|
715: len=507
|
|
716: len=507
|
|
717: len=507
|
|
718: len=507
|
|
719: len=507
|
|
720: len=507
|
|
721: len=507
|
|
722: len=507
|
|
723: len=507
|
|
724: len=507
|
|
725: len=507
|
|
726: len=507
|
|
727: len=507
|
|
728: len=507
|
|
729: len=507
|
|
730: len=507
|
|
731: len=507
|
|
732: len=507
|
|
733: len=507
|
|
734: len=507
|
|
735: len=507
|
|
736: len=507
|
|
737: len=507
|
|
738: len=507
|
|
739: len=507
|
|
740: len=507
|
|
741: len=507
|
|
742: len=507
|
|
743: len=507
|
|
744: len=507
|
|
745: len=507
|
|
746: len=507
|
|
747: len=507
|
|
748: len=507
|
|
749: len=507
|
|
750: len=507
|
|
751: len=507
|
|
752: len=507
|
|
753: len=507
|
|
754: len=507
|
|
755: len=507
|
|
756: len=507
|
|
757: len=507
|
|
758: len=507
|
|
759: len=507
|
|
760: len=507
|
|
761: len=507
|
|
762: len=507
|
|
763: len=507
|
|
764: len=507
|
|
765: len=507
|
|
766: len=507
|
|
767: len=507
|
|
768: len=507
|
|
769: len=507
|
|
770: len=507
|
|
771: len=507
|
|
772: len=507
|
|
773: len=507
|
|
774: len=507
|
|
775: len=507
|
|
776: len=507
|
|
777: len=507
|
|
778: len=507
|
|
779: len=507
|
|
780: len=507
|
|
781: len=507
|
|
782: len=507
|
|
783: len=507
|
|
784: len=507
|
|
785: len=507
|
|
786: len=507
|
|
787: len=507
|
|
788: len=507
|
|
789: len=507
|
|
790: len=507
|
|
791: len=507
|
|
792: len=507
|
|
793: len=507
|
|
794: len=507
|
|
795: len=507
|
|
796: len=507
|
|
797: len=507
|
|
798: len=507
|
|
799: len=507
|
|
800: len=507
|
|
801: len=507
|
|
802: len=507
|
|
803: len=507
|
|
804: len=507
|
|
805: len=507
|
|
806: len=507
|
|
807: len=507
|
|
808: len=507
|
|
809: len=507
|
|
810: len=507
|
|
811: len=507
|
|
812: len=507
|
|
813: len=507
|
|
814: len=507
|
|
815: len=507
|
|
816: len=507
|
|
817: len=507
|
|
818: len=507
|
|
819: len=507
|
|
820: len=507
|
|
821: len=507
|
|
822: len=507
|
|
823: len=507
|
|
824: len=507
|
|
825: len=507
|
|
826: len=507
|
|
827: len=507
|
|
828: len=507
|
|
829: len=507
|
|
830: len=507
|
|
831: len=507
|
|
832: len=507
|
|
833: len=507
|
|
834: len=507
|
|
835: len=507
|
|
836: len=507
|
|
837: len=507
|
|
838: len=507
|
|
839: len=507
|
|
840: len=507
|
|
841: len=507
|
|
842: len=507
|
|
843: len=507
|
|
844: len=507
|
|
845: len=507
|
|
846: len=507
|
|
847: len=507
|
|
848: len=507
|
|
849: len=507
|
|
850: len=507
|
|
851: len=507
|
|
852: len=507
|
|
853: len=507
|
|
854: len=507
|
|
855: len=507
|
|
856: len=507
|
|
857: len=507
|
|
858: len=507
|
|
859: len=507
|
|
860: len=507
|
|
861: len=507
|
|
862: len=507
|
|
863: len=507
|
|
864: len=507
|
|
865: len=507
|
|
866: len=507
|
|
867: len=507
|
|
868: len=507
|
|
869: len=507
|
|
870: len=507
|
|
871: len=507
|
|
872: len=507
|
|
873: len=507
|
|
874: len=507
|
|
875: len=507
|
|
876: len=507
|
|
877: len=507
|
|
878: len=507
|
|
879: len=507
|
|
880: len=507
|
|
881: len=507
|
|
882: len=507
|
|
883: len=507
|
|
884: len=507
|
|
885: len=507
|
|
886: len=507
|
|
887: len=507
|
|
888: len=507
|
|
889: len=507
|
|
890: len=507
|
|
891: len=507
|
|
892: len=507
|
|
893: len=507
|
|
894: len=507
|
|
895: len=507
|
|
896: len=507
|
|
897: len=507
|
|
898: len=507
|
|
899: len=507
|
|
900: len=507
|
|
901: len=507
|
|
902: len=507
|
|
903: len=507
|
|
904: len=507
|
|
905: len=507
|
|
906: len=507
|
|
907: len=507
|
|
908: len=507
|
|
909: len=507
|
|
910: len=507
|
|
911: len=507
|
|
912: len=507
|
|
913: len=507
|
|
914: len=507
|
|
915: len=507
|
|
916: len=507
|
|
917: len=507
|
|
918: len=507
|
|
919: len=507
|
|
920: len=507
|
|
921: len=507
|
|
922: len=507
|
|
923: len=507
|
|
924: len=507
|
|
925: len=507
|
|
926: len=507
|
|
927: len=507
|
|
928: len=507
|
|
929: len=507
|
|
930: len=507
|
|
931: len=507
|
|
932: len=507
|
|
933: len=507
|
|
934: len=507
|
|
935: len=507
|
|
936: len=507
|
|
937: len=507
|
|
938: len=507
|
|
939: len=507
|
|
940: len=507
|
|
941: len=507
|
|
942: len=507
|
|
943: len=507
|
|
944: len=507
|
|
945: len=507
|
|
946: len=507
|
|
947: len=507
|
|
948: len=507
|
|
949: len=507
|
|
950: len=507
|
|
951: len=507
|
|
952: len=507
|
|
953: len=507
|
|
954: len=507
|
|
955: len=507
|
|
956: len=507
|
|
957: len=507
|
|
958: len=507
|
|
959: len=507
|
|
960: len=507
|
|
961: len=507
|
|
962: len=507
|
|
963: len=507
|
|
964: len=507
|
|
965: len=507
|
|
966: len=507
|
|
967: len=507
|
|
968: len=507
|
|
969: len=507
|
|
970: len=507
|
|
971: len=507
|
|
972: len=507
|
|
973: len=507
|
|
974: len=507
|
|
975: len=507
|
|
976: len=507
|
|
977: len=507
|
|
978: len=507
|
|
979: len=507
|
|
980: len=507
|
|
981: len=507
|
|
982: len=507
|
|
983: len=507
|
|
984: len=507
|
|
985: len=507
|
|
986: len=507
|
|
987: len=507
|
|
988: len=507
|
|
989: len=507
|
|
990: len=507
|
|
991: len=507
|
|
992: len=507
|
|
993: len=507
|
|
994: len=507
|
|
995: len=507
|
|
996: len=507
|
|
997: len=507
|
|
998: len=507
|
|
999: len=507
|
|
1000: len=507
|
|
1001: len=507
|
|
1002: len=507
|
|
1003: len=507
|
|
1004: len=507
|
|
1005: len=507
|
|
1006: len=507
|
|
1007: len=507
|
|
1008: len=507
|
|
1009: len=507
|
|
1010: len=507
|
|
1011: len=507
|
|
1012: len=507
|
|
1013: len=507
|
|
1014: len=507
|
|
1015: len=507
|
|
1016: len=507
|
|
1017: len=507
|
|
1018: len=507
|
|
1019: len=507
|
|
1020: len=507
|
|
1021: len=507
|
|
1022: len=507
|
|
1023: len=507
|
|
1024: len=507
|
|
1025: len=507
|
|
1026: len=507
|
|
1027: len=507
|
|
1028: len=507
|
|
1029: len=507
|
|
1030: len=507
|
|
1031: len=507
|
|
1032: len=507
|
|
1033: len=507
|
|
1034: len=507
|
|
1035: len=507
|
|
1036: len=507
|
|
1037: len=507
|
|
1038: len=507
|
|
1039: len=507
|
|
1040: len=507
|
|
1041: len=507
|
|
1042: len=507
|
|
1043: len=507
|
|
1044: len=507
|
|
1045: len=507
|
|
1046: len=507
|
|
1047: len=507
|
|
1048: len=507
|
|
1049: len=507
|
|
1050: len=507
|
|
1051: len=507
|
|
1052: len=507
|
|
1053: len=507
|
|
1054: len=507
|
|
1055: len=507
|
|
1056: len=507
|
|
1057: len=507
|
|
1058: len=507
|
|
1059: len=507
|
|
1060: len=507
|
|
1061: len=507
|
|
1062: len=507
|
|
1063: len=507
|
|
1064: len=507
|
|
1065: len=507
|
|
1066: len=507
|
|
1067: len=507
|
|
1068: len=507
|
|
1069: len=507
|
|
1070: len=507
|
|
1071: len=507
|
|
1072: len=507
|
|
1073: len=507
|
|
1074: len=507
|