#11 typecode problem

closed-fixed
Derek Thomson
None
5
2003-02-27
2002-06-14
Anonymous
No

From: Ted Horst <Ted.Horst@wdr.com>
Date: Wed, 26 Apr 2000 13:11:18 -0500

I just spent a few hours tracking down a typecode
problem having to do with recursive structures and
unions. Turns out it was another patch that had been
submitted by Derek but didn't make it into the 1.1
release.

There was a followon message to the list from John
Murray that included a few more changes, but those
didn't seem to be needed for my problem. I will leave
it to those with a more thorough understanding to
determine whether they should be applied.

*** TypeCode.py.orig Mon Apr 3 09:08:35 2000
--- TypeCode.py Wed Apr 26 12:51:18 2000
***************
*** 2258,2264 ****
cursor.marshal('b', Util.HOST_BYTE_ORDER)

# Find the offset of the recursive type in the
octet stream.
! (container, offset) =
cursor.stack().items()[self._offset-1]

# The guts of the typecode.
cursor.marshal('L', 0xffffffffL)
--- 2258,2265 ----
cursor.marshal('b', Util.HOST_BYTE_ORDER)

# Find the offset of the recursive type in the
octet stream.
! # (container, offset) =
cursor.stack().items()[self._offset-1]
! (container, offset) = cursor.stack().items()[-1]

# The guts of the typecode.
cursor.marshal('L', 0xffffffffL)

Discussion

  • Derek Thomson
    Derek Thomson
    2003-02-27

    • assigned_to: nobody --> dthomson
    • status: open --> closed-fixed
     
  • Derek Thomson
    Derek Thomson
    2003-02-27

    Logged In: YES
    user_id=435731

    Thanks for this. I didn't realize it had been lost between
    my departure and return :(

    I've checked it into the CVS tree, so it should be fine.

    As for John's problem ... he really didn't provide enough
    info to work out what's going on for him. Removing those
    pops looks wrong to me - stuff is never going to be removed
    from the stack!!

    I guess it will just have to wait until we hit the same
    problem during the development of the Fnorb tests ... you
    could try emailing him directly I guess.