Index: src/wp-includes/pluggable.php
===================================================================
--- src/wp-includes/pluggable.php	(revision 29719)
+++ src/wp-includes/pluggable.php	(working copy)
@@ -1692,7 +1692,8 @@
  * @param string|int $action Should give context to what is taking place and be the same when nonce was created.
  * @return bool Whether the nonce check passed or failed.
  */
-function wp_verify_nonce($nonce, $action = -1) {
+function wp_verify_nonce( $nonce, $action = -1 ) {
+	$nonce = (string) $nonce;
 	$user = wp_get_current_user();
 	$uid = (int) $user->ID;
 	if ( ! $uid ) {
@@ -1707,10 +1708,6 @@
 		$uid = apply_filters( 'nonce_user_logged_out', $uid, $action );
 	}
 
-	if ( empty( $nonce ) ) {
-		return false;
-	}
-
 	$token = wp_get_session_token();
 	$i = wp_nonce_tick();
 
Index: tests/phpunit/tests/auth.php
===================================================================
--- tests/phpunit/tests/auth.php	(revision 29719)
+++ tests/phpunit/tests/auth.php	(working copy)
@@ -99,4 +99,11 @@
 		$this->assertFalse( wp_verify_nonce( '' ) );
 		$this->assertFalse( wp_verify_nonce( null ) );
 	}
+
+	/**
+	 * @ticket 29542
+	 */
+	function test_wp_verify_nonce_with_integer_arg() {
+		$this->assertFalse( wp_verify_nonce( 1 ) );
+	}
 }
