You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Russ Garrett (JIRA)" <ji...@apache.org> on 2009/02/24 16:40:04 UTC

[jira] Created: (THRIFT-349) Accelerated binary protocol serialization segementation fault

Accelerated binary protocol serialization segementation fault
-------------------------------------------------------------

                 Key: THRIFT-349
                 URL: https://issues.apache.org/jira/browse/THRIFT-349
             Project: Thrift
          Issue Type: Bug
          Components: Library (PHP)
            Reporter: Russ Garrett
         Attachments: thrift_protocol_serialization.patch

When using the thrift_protocol PHP extension, serializing an object which doesn't have a _TSPEC static member as a T_STRUCT results in a segfault.. This can happen if you have cached Thrift objects which didn't get constructed in the current session.

This happens because the null zval is interpreted as a hashtable. A patch is attached which throws an exception in this case.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (THRIFT-349) Accelerated binary protocol serialization segementation fault

Posted by "Russ Garrett (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Russ Garrett updated THRIFT-349:
--------------------------------

    Attachment: thrift_protocol_serialization.patch

> Accelerated binary protocol serialization segementation fault
> -------------------------------------------------------------
>
>                 Key: THRIFT-349
>                 URL: https://issues.apache.org/jira/browse/THRIFT-349
>             Project: Thrift
>          Issue Type: Bug
>          Components: Library (PHP)
>            Reporter: Russ Garrett
>         Attachments: thrift_protocol_serialization.patch
>
>
> When using the thrift_protocol PHP extension, serializing an object which doesn't have a _TSPEC static member as a T_STRUCT results in a segfault.. This can happen if you have cached Thrift objects which didn't get constructed in the current session.
> This happens because the null zval is interpreted as a hashtable. A patch is attached which throws an exception in this case.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (THRIFT-349) Accelerated binary protocol serialization segementation fault

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury resolved THRIFT-349.
----------------------------------

       Resolution: Fixed
    Fix Version/s: 0.2
         Assignee: Russ Garrett

I just committed this patch. Thanks Russ!

> Accelerated binary protocol serialization segementation fault
> -------------------------------------------------------------
>
>                 Key: THRIFT-349
>                 URL: https://issues.apache.org/jira/browse/THRIFT-349
>             Project: Thrift
>          Issue Type: Bug
>          Components: Library (PHP)
>            Reporter: Russ Garrett
>            Assignee: Russ Garrett
>             Fix For: 0.2
>
>         Attachments: thrift_protocol_serialization.patch, thrift_protocol_serialization_2.patch
>
>
> When using the thrift_protocol PHP extension, serializing an object which doesn't have a _TSPEC static member as a T_STRUCT results in a segfault.. This can happen if you have cached Thrift objects which didn't get constructed in the current session.
> This happens because the null zval is interpreted as a hashtable. A patch is attached which throws an exception in this case.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (THRIFT-349) Accelerated binary protocol serialization segementation fault

Posted by "Russ Garrett (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Russ Garrett updated THRIFT-349:
--------------------------------

    Attachment: thrift_protocol_serialization_2.patch

Thrift_protocol_serialization_2.patch  is now relative to the project root.

> Accelerated binary protocol serialization segementation fault
> -------------------------------------------------------------
>
>                 Key: THRIFT-349
>                 URL: https://issues.apache.org/jira/browse/THRIFT-349
>             Project: Thrift
>          Issue Type: Bug
>          Components: Library (PHP)
>            Reporter: Russ Garrett
>         Attachments: thrift_protocol_serialization.patch, thrift_protocol_serialization_2.patch
>
>
> When using the thrift_protocol PHP extension, serializing an object which doesn't have a _TSPEC static member as a T_STRUCT results in a segfault.. This can happen if you have cached Thrift objects which didn't get constructed in the current session.
> This happens because the null zval is interpreted as a hashtable. A patch is attached which throws an exception in this case.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.