- fix warning (initialize zend_object_value)
[m6w6/ext-http] / http_message_object.c
index 4cb201a2e6f21093403b525301c5d36fbc675a2e..6e2fc27239550b4602526adc2882d0ca60b86e98 100644 (file)
@@ -278,8 +278,8 @@ void _http_message_object_reverse(zval *this_ptr, zval *return_value TSRMLS_DC)
 void _http_message_object_prepend_ex(zval *this_ptr, zval *prepend, zend_bool top TSRMLS_DC)
 {
        zval m;
-       http_message *save_parent_msg;
-       zend_object_value save_parent_obj;
+       http_message *save_parent_msg = NULL;
+       zend_object_value save_parent_obj = {0, NULL};
        getObject(http_message_object, obj);
        getObjectEx(http_message_object, prepend_obj, prepend);
                
@@ -1127,20 +1127,22 @@ PHP_METHOD(HttpMessage, setHttpVersion)
  * Get parent Message.
  * 
  * Returns the parent HttpMessage on success, or NULL if there's none.
+ *
+ * Throws HttpMessageException.
  */
 PHP_METHOD(HttpMessage, getParentMessage)
 {
-       NO_ARGS;
-
-       IF_RETVAL_USED {
+       SET_EH_THROW_HTTP();
+       NO_ARGS {
                getObject(http_message_object, obj);
 
                if (obj->message->parent) {
                        RETVAL_OBJVAL(obj->parent, 1);
                } else {
-                       RETVAL_NULL();
+                       http_error(HE_WARNING, HTTP_E_RUNTIME, "HttpMessage does not have a parent message");
                }
        }
+       SET_EH_NORMAL();
 }
 /* }}} */