OSDN Git Service

show error on invalid json. closes #531
authorscribu <mail@scribu.net>
Wed, 19 Jun 2013 17:47:33 +0000 (20:47 +0300)
committerscribu <mail@scribu.net>
Sat, 22 Jun 2013 18:12:02 +0000 (21:12 +0300)
php/class-wp-cli.php

index 1daf815..00ed4bc 100644 (file)
@@ -165,9 +165,14 @@ class WP_CLI {
         * @param mixed $value
         * @param array $assoc_args
         */
-       static function read_value( $value, $assoc_args = array() ) {
+       static function read_value( $raw_value, $assoc_args = array() ) {
                if ( isset( $assoc_args['format'] ) && 'json' == $assoc_args['format'] ) {
-                       $value = json_decode( $value, true );
+                       $value = json_decode( $raw_value, true );
+                       if ( null === $value ) {
+                               WP_CLI::error( sprintf( 'Invalid JSON: %s', $raw_value ) );
+                       }
+               } else {
+                       $value = $raw_value;
                }
 
                return $value;