Open Metaverse JIRA issue tracker

  • Log In Access more options
    • Online Help
    • GreenHopper Help
    • Agile Answers
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Agile
  • libopenmetaverse
  • LIBOMV-567

Packets with Variable blocks that are sent null are not being handled by the packet splitter

  • Voters
  • Watchers
  • More Actions
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 0.7.0
  • Fix Version/s: 0.7.0
  • Component/s: Networking
  • Labels:
    None
  • Severity:
    High
  • Environment:
    All
  • Steps to Reproduce:
    Hide

    Run TestClient thru WinGridProxy

    touch prim-UUID

    Notice no ObjectGrabPacket is sent

    Show
    Run TestClient thru WinGridProxy touch prim-UUID Notice no ObjectGrabPacket is sent

Description

See LIBOMV-566 for originally reported issue:

What was happening is our Grab Packet was not populating the SurfaceInfo variable block of the packet and the packet was therefore being dropped.

Repro: remove SurfaceInfo block from degrab packet (or grab packet), use touch command in TestClient, no packet is sent.

public void DeGrab(uint objectLocalID, Vector3 uvCoord, Vector3 stCoord, int faceIndex, Vector3 position,
Vector3 normal, Vector3 binormal)

{ ObjectDeGrabPacket degrab = new ObjectDeGrabPacket(); degrab.AgentData.AgentID = Client.Self.AgentID; degrab.AgentData.SessionID = Client.Self.SessionID; degrab.ObjectData.LocalID = objectLocalID; degrab.SurfaceInfo = new ObjectDeGrabPacket.SurfaceInfoBlock[1]; degrab.SurfaceInfo[0] = new ObjectDeGrabPacket.SurfaceInfoBlock(); degrab.SurfaceInfo[0].UVCoord = uvCoord; degrab.SurfaceInfo[0].STCoord = stCoord; degrab.SurfaceInfo[0].FaceIndex = faceIndex; degrab.SurfaceInfo[0].Position = position; degrab.SurfaceInfo[0].Normal = normal; degrab.SurfaceInfo[0].Binormal = binormal; Client.Network.SendPacket(degrab); }

Expected Result: Packet gets packed properly and sent without the block

Issue Links

causes

Bug - A problem which impairs or prevents the functions of the product. LIBOMV-566 ObjectGrabPacket ToBytesMultiple() not working

  • Blocker - Blocks development and/or testing work, production could not run.
  • Resolved - A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • History
  • Activity
  • Commits
Jim Radford made changes - 30/May/09 7:21 AM
Field Original Value New Value
Assignee Jim Radford [ jradford ] John Hurliman [ jhurliman ]
Priority Blocker [ 1 ] Major [ 3 ]
Description ObjectGrabPacket ToBytesMultiple() not working
For now a workarround is

 HasVariableBlocks = false;
in the contructor.

Possibly other packets are broken in simular way
See LIBOMV-566 for originally reported issue:

What was happening is our Grab Packet was not populating the SurfaceInfo variable block of the packet and the packet was therefore being dropped.

Repro: remove SurfaceInfo block from degrab packet (or grab packet), use touch command in TestClient, no packet is sent.

public void DeGrab(uint objectLocalID, Vector3 uvCoord, Vector3 stCoord, int faceIndex, Vector3 position,
            Vector3 normal, Vector3 binormal)
        {
            ObjectDeGrabPacket degrab = new ObjectDeGrabPacket();
            degrab.AgentData.AgentID = Client.Self.AgentID;
            degrab.AgentData.SessionID = Client.Self.SessionID;

            degrab.ObjectData.LocalID = objectLocalID;
            
            degrab.SurfaceInfo = new ObjectDeGrabPacket.SurfaceInfoBlock[1];
            degrab.SurfaceInfo[0] = new ObjectDeGrabPacket.SurfaceInfoBlock();
            degrab.SurfaceInfo[0].UVCoord = uvCoord;
            degrab.SurfaceInfo[0].STCoord = stCoord;
            degrab.SurfaceInfo[0].FaceIndex = faceIndex;
            degrab.SurfaceInfo[0].Position = position;
            degrab.SurfaceInfo[0].Normal = normal;
            degrab.SurfaceInfo[0].Binormal = binormal;

            Client.Network.SendPacket(degrab);
        }

Expected Result: Packet gets packed properly and sent without the block
Severity Showstopper High
Jim Radford made changes - 30/May/09 7:21 AM
Link This issue causes LIBOMV-566 [ LIBOMV-566 ]
John Hurliman made changes - 10/Jun/09 1:52 AM
Status Open [ 1 ] In Progress [ 3 ]
John Hurliman made changes - 15/Jun/09 1:42 AM
Status In Progress [ 3 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]

People

  • Assignee:
    John Hurliman
    Reporter:
    Douglas R Miles
Vote (0)
Watch (0)

Dates

  • Created:
    30/May/09 7:16 AM
    Updated:
    15/Jun/09 1:42 AM
    Resolved:
    15/Jun/09 1:42 AM

Agile

  • View on Board
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Radegast Metaverse Client. Try JIRA - bug tracking software for your team.