Changeset 45851
- Timestamp:
- 08/19/2019 03:49:32 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/post.php
r45779 r45851 3664 3664 3665 3665 if ( 'attachment' !== $post_type ) { 3666 if ( 'publish' == $post_status ) {3667 $now = gmdate( 'Y-m-d H:i:59' );3668 if ( mysql2date( 'U', $post_date_gmt, false ) > mysql2date( 'U', $now, false) ) {3666 if ( 'publish' === $post_status ) { 3667 // String comparison to work around far future dates (year 2038+) on 32-bit systems. 3668 if ( $post_date_gmt > gmdate( 'Y-m-d H:i:59' ) ) { 3669 3669 $post_status = 'future'; 3670 3670 } 3671 } elseif ( 'future' == $post_status ) { 3672 $now = gmdate( 'Y-m-d H:i:59' ); 3673 if ( mysql2date( 'U', $post_date_gmt, false ) <= mysql2date( 'U', $now, false ) ) { 3671 } elseif ( 'future' === $post_status ) { 3672 if ( $post_date_gmt <= gmdate( 'Y-m-d H:i:59' ) ) { 3674 3673 $post_status = 'publish'; 3675 3674 } -
trunk/tests/phpunit/tests/post/wpInsertPost.php
r43571 r45851 303 303 } 304 304 305 /** 306 * @ticket 25347 307 */ 308 function test_scheduled_post_with_a_past_date_should_be_published() { 309 310 $now = new DateTimeImmutable( 'now', new DateTimeZone( 'UTC' ) ); 311 312 $post_id = $this->factory()->post->create( [ 313 'post_date_gmt' => $now->modify( '-1 year' )->format( 'Y-m-d H:i:s' ), 314 'post_status' => 'future', 315 ] ); 316 317 $this->assertEquals( 'publish', get_post_status( $post_id ) ); 318 319 $post_id = $this->factory()->post->create( [ 320 'post_date_gmt' => $now->modify( '+50 years' )->format( 'Y-m-d H:i:s' ), 321 'post_status' => 'future', 322 ] ); 323 324 $this->assertEquals( 'future', get_post_status( $post_id ) ); 325 } 305 326 }
Note: See TracChangeset
for help on using the changeset viewer.