Annotation of embedaddon/php/ext/date/tests/bug52113.phpt, revision 1.1.1.2
1.1 misho 1: --TEST--
2: Bug #52113 (Seg fault while creating (by unserialization) DatePeriod)
3: --INI--
4: date.timezone=UTC
5: --FILE--
6: <?php
7: $start = new DateTime('2003-01-02 08:00:00');
8: $end = new DateTime('2003-01-02 12:00:00');
9: $diff = $start->diff($end);
10: $p = new DatePeriod($start, $diff, 2);
11: $diff_s = serialize($diff);
12: var_dump($diff, $diff_s);
13: var_export($diff);
14:
15: $diff_un = unserialize($diff_s);
16: $p = new DatePeriod($start, $diff_un, 2);
17: var_dump($diff_un, $p);
18:
19: $unser = DateInterval::__set_state(array(
20: 'y' => 7,
21: 'm' => 6,
22: 'd' => 5,
23: 'h' => 4,
24: 'i' => 3,
25: 's' => 2,
26: 'invert' => 1,
27: 'days' => 2400,
28: ));
29:
30: $p = new DatePeriod($start, $diff_un, 2);
31: var_dump($unser, $p);
32:
33: ?>
34: --EXPECT--
1.1.1.2 ! misho 35: object(DateInterval)#3 (15) {
1.1 misho 36: ["y"]=>
37: int(0)
38: ["m"]=>
39: int(0)
40: ["d"]=>
41: int(0)
42: ["h"]=>
43: int(4)
44: ["i"]=>
45: int(0)
46: ["s"]=>
47: int(0)
1.1.1.2 ! misho 48: ["weekday"]=>
! 49: int(0)
! 50: ["weekday_behavior"]=>
! 51: int(0)
! 52: ["first_last_day_of"]=>
! 53: int(0)
1.1 misho 54: ["invert"]=>
55: int(0)
56: ["days"]=>
57: int(0)
1.1.1.2 ! misho 58: ["special_type"]=>
! 59: int(0)
! 60: ["special_amount"]=>
! 61: int(0)
! 62: ["have_weekday_relative"]=>
! 63: int(0)
! 64: ["have_special_relative"]=>
! 65: int(0)
1.1 misho 66: }
1.1.1.2 ! misho 67: string(320) "O:12:"DateInterval":15:{s:1:"y";i:0;s:1:"m";i:0;s:1:"d";i:0;s:1:"h";i:4;s:1:"i";i:0;s:1:"s";i:0;s:7:"weekday";i:0;s:16:"weekday_behavior";i:0;s:17:"first_last_day_of";i:0;s:6:"invert";i:0;s:4:"days";i:0;s:12:"special_type";i:0;s:14:"special_amount";i:0;s:21:"have_weekday_relative";i:0;s:21:"have_special_relative";i:0;}"
1.1 misho 68: DateInterval::__set_state(array(
69: 'y' => 0,
70: 'm' => 0,
71: 'd' => 0,
72: 'h' => 4,
73: 'i' => 0,
74: 's' => 0,
1.1.1.2 ! misho 75: 'weekday' => 0,
! 76: 'weekday_behavior' => 0,
! 77: 'first_last_day_of' => 0,
1.1 misho 78: 'invert' => 0,
79: 'days' => 0,
1.1.1.2 ! misho 80: 'special_type' => 0,
! 81: 'special_amount' => 0,
! 82: 'have_weekday_relative' => 0,
! 83: 'have_special_relative' => 0,
! 84: ))object(DateInterval)#5 (15) {
1.1 misho 85: ["y"]=>
86: int(0)
87: ["m"]=>
88: int(0)
89: ["d"]=>
90: int(0)
91: ["h"]=>
92: int(4)
93: ["i"]=>
94: int(0)
95: ["s"]=>
96: int(0)
1.1.1.2 ! misho 97: ["weekday"]=>
! 98: int(0)
! 99: ["weekday_behavior"]=>
! 100: int(0)
! 101: ["first_last_day_of"]=>
! 102: int(0)
1.1 misho 103: ["invert"]=>
104: int(0)
105: ["days"]=>
106: int(0)
1.1.1.2 ! misho 107: ["special_type"]=>
! 108: int(0)
! 109: ["special_amount"]=>
! 110: int(0)
! 111: ["have_weekday_relative"]=>
! 112: int(0)
! 113: ["have_special_relative"]=>
! 114: int(0)
1.1 misho 115: }
1.1.1.2 ! misho 116: object(DatePeriod)#6 (6) {
! 117: ["start"]=>
! 118: object(DateTime)#4 (3) {
! 119: ["date"]=>
! 120: string(19) "2003-01-02 08:00:00"
! 121: ["timezone_type"]=>
! 122: int(3)
! 123: ["timezone"]=>
! 124: string(3) "UTC"
! 125: }
! 126: ["current"]=>
! 127: NULL
! 128: ["end"]=>
! 129: NULL
! 130: ["interval"]=>
! 131: object(DateInterval)#7 (15) {
! 132: ["y"]=>
! 133: int(0)
! 134: ["m"]=>
! 135: int(0)
! 136: ["d"]=>
! 137: int(0)
! 138: ["h"]=>
! 139: int(4)
! 140: ["i"]=>
! 141: int(0)
! 142: ["s"]=>
! 143: int(0)
! 144: ["weekday"]=>
! 145: int(0)
! 146: ["weekday_behavior"]=>
! 147: int(0)
! 148: ["first_last_day_of"]=>
! 149: int(0)
! 150: ["invert"]=>
! 151: int(0)
! 152: ["days"]=>
! 153: int(0)
! 154: ["special_type"]=>
! 155: int(0)
! 156: ["special_amount"]=>
! 157: int(0)
! 158: ["have_weekday_relative"]=>
! 159: int(0)
! 160: ["have_special_relative"]=>
! 161: int(0)
! 162: }
! 163: ["recurrences"]=>
! 164: int(3)
! 165: ["include_start_date"]=>
! 166: bool(true)
1.1 misho 167: }
1.1.1.2 ! misho 168: object(DateInterval)#8 (15) {
1.1 misho 169: ["y"]=>
170: int(7)
171: ["m"]=>
172: int(6)
173: ["d"]=>
174: int(5)
175: ["h"]=>
176: int(4)
177: ["i"]=>
178: int(3)
179: ["s"]=>
180: int(2)
1.1.1.2 ! misho 181: ["weekday"]=>
! 182: int(-1)
! 183: ["weekday_behavior"]=>
! 184: int(-1)
! 185: ["first_last_day_of"]=>
! 186: int(-1)
1.1 misho 187: ["invert"]=>
188: int(1)
189: ["days"]=>
190: int(2400)
1.1.1.2 ! misho 191: ["special_type"]=>
! 192: int(0)
! 193: ["special_amount"]=>
! 194: int(-1)
! 195: ["have_weekday_relative"]=>
! 196: int(0)
! 197: ["have_special_relative"]=>
! 198: int(0)
1.1 misho 199: }
1.1.1.2 ! misho 200: object(DatePeriod)#9 (6) {
! 201: ["start"]=>
! 202: object(DateTime)#6 (3) {
! 203: ["date"]=>
! 204: string(19) "2003-01-02 08:00:00"
! 205: ["timezone_type"]=>
! 206: int(3)
! 207: ["timezone"]=>
! 208: string(3) "UTC"
! 209: }
! 210: ["current"]=>
! 211: NULL
! 212: ["end"]=>
! 213: NULL
! 214: ["interval"]=>
! 215: object(DateInterval)#7 (15) {
! 216: ["y"]=>
! 217: int(0)
! 218: ["m"]=>
! 219: int(0)
! 220: ["d"]=>
! 221: int(0)
! 222: ["h"]=>
! 223: int(4)
! 224: ["i"]=>
! 225: int(0)
! 226: ["s"]=>
! 227: int(0)
! 228: ["weekday"]=>
! 229: int(0)
! 230: ["weekday_behavior"]=>
! 231: int(0)
! 232: ["first_last_day_of"]=>
! 233: int(0)
! 234: ["invert"]=>
! 235: int(0)
! 236: ["days"]=>
! 237: int(0)
! 238: ["special_type"]=>
! 239: int(0)
! 240: ["special_amount"]=>
! 241: int(0)
! 242: ["have_weekday_relative"]=>
! 243: int(0)
! 244: ["have_special_relative"]=>
! 245: int(0)
! 246: }
! 247: ["recurrences"]=>
! 248: int(3)
! 249: ["include_start_date"]=>
! 250: bool(true)
1.1 misho 251: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>