Author Topic: Defect Item ID - cannot sell sword  (Read 855 times)

LigH

  • Forum Legend
  • *
  • Posts: 7096
    • View Profile
Defect Item ID - cannot sell sword
« on: November 04, 2005, 03:47:53 am »
I have a \"Alexandrite encrusted Embossed Broad Sword of Talad\'s Arm\" which I cannot sell. If I try, the client immediately closes, the crash is not caught.

Here are the last entries of the \"psclient.txt\" console output file:

Code: [Select]
...

<\\Luca\\Crystal Space\\planeshift\\src\\client\\gui\\pawsmerchantwindow.cpp:310> pawsMerchantWindow::HandleItems
:
    IMG=\"/planeshift/weapons/shortsword01a_icon.png\" PRICE=\"160\" COUNT=\"2\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/dagger01a_icon.png\" PRICE=\"40\" COUNT=\"4\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/broadsword01a_icon.png\" PRICE=\"160\" COUNT=\"3\"
  PURIFIED=\"no\" />  Broad Sword of Talad's Arm\"
  IMG=\"/planeshift/weapons/broadsword01a_icon.png\" PRICE=\"3264\" COUNT=\"1\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/doubleaxe02a_icon.png\" PRICE=\"640\" COUNT=\"1\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/doubleaxe02a_icon.png\" PRICE=\"447\" COUNT=\"1\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/shortsword01a_icon.png\" PRICE=\"320\" COUNT=\"2\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/broadsword01a_icon.png\" PRICE=\"320\" COUNT=\"2\"
  PURIFIED=\"no\" />  IMG=\"/planeshift/weapons/longsword01a_icon.png\" PRICE=\"1920\" COUNT=\"1\"
  PURIFIED=\"no\" />


<\\Luca\\Crystal Space\\planeshift\\src\\client\\gui\\pawsmerchantwindow.cpp:500> pawsMerchantWindow::DoTrade
:
    Talad's Arm\" COUNT=\"1\" ITEM_ID=\"133?997\" />


The \"?\" in the value \"133?997\" is a character 0x01h.

Please tell me if you need more details, and where I can send them.

Gag Harmond
Knight and Ambassador
The Royal House of Purrty

steuben

  • Veteran
  • *
  • Posts: 1834
    • View Profile
    • Myspace
(No subject)
« Reply #1 on: November 04, 2005, 04:33:14 am »
does it happen when you try to trade the item?

given the invalid char in the string, i suspect it might. but it will add more info for this one.
may laanx frighten the shadow from my path.
hardly because the shadow built the lexx.
the shadow will frighten laanx from my path.

Bereror

  • Hydlaa Notable
  • *
  • Posts: 773
    • View Profile
    • Planeshift API
(No subject)
« Reply #2 on: November 04, 2005, 06:21:49 am »
The name of the sword is too long.

In void pawsMerchantWindow::DoTrade()
Code: [Select]

    char commandData[100];
    sprintf(commandData, \"\",
            merchantID, escpxml.GetData(), count, itemID);


The commandData buffer is for 99 characters only, but with that long sword name you need 116. It overwrites some important code in the stack and the client crashes.

I can sell it for you if you want  ;)
PlaneShift Sources
PlaneShift API
"Words never spoken
Are the strongest resounding"

stfrn

  • Hydlaa Citizen
  • *
  • Posts: 324
  • the beaver ex-dev :B
    • View Profile
(No subject)
« Reply #3 on: November 04, 2005, 06:26:48 am »
Hm, ok then it is the client making the mistake. Now that I have a little more to work with I\'ll see what I can do. I could try with any such items if you want to give up the item.

Edit: Bereror, yeah, that\'s what I was thinking.

Edit2: ok, that\'s what I was thinking a month ago, and forgot to commit >.> My bad.
« Last Edit: November 04, 2005, 06:46:16 am by stfrn »
player -> gm -> dev -> bum

LigH

  • Forum Legend
  • *
  • Posts: 7096
    • View Profile
(No subject)
« Reply #4 on: November 04, 2005, 09:45:23 am »
I can give this sword to you in game, no problem. 3216 tria are nothing I would really need. ;)

Just contact me.

Gag Harmond
Knight and Ambassador
The Royal House of Purrty