UFO: Alien Invasion Issue Tracker
UFO: Alien Invasion
Go to the previous open issue
Go to the previous issue (open or closed)
star_faded.png
Please log in to bookmark issues
icon_project.png UFO: Alien Invasion / Closed Bug report #1869 csi.ods[34].isDummy=1, causing assertionerror in CL_AddActor
Go to the next issue (open or closed)
Go to the next open issue
This issue has been closed with status "Closed" and resolution "Not determined".
Issue basics
  • Type of issue
    Bug report
  • Category
    Artwork
  • Targetted for
    Not determined
  • Status
    Closed
  • Priority
    3. Normal
User pain
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
Affected by this issue (0)
There are no items
People involved
Times and dates
  • Posted at
  • Last updated
  • Estimated time
    Not estimated
Issue details
  • Resolution
    Not determined
  • Reproducability
    Not determined
  • Severity
    Not determined
  • Complexity
    Not determined
  • Platform
    Not determined
  • Architecture
    Not determined
Attachments (0)
There is nothing attached to this issue
Duplicate issues (0)
This issue does not have any duplicates
Description
[http://sourceforge.net/p/ufoai/bugs/1869 Item 1869] imported from sourceforge.net tracker on 2013-01-28 19:12:13

When loading the attached savegame and entering the battlescape - either immediately or after moving a bit around, this assertion error occurs:

ufo: src/client/cl_actor.c:4478: CL_AddActor: Assertion `add.model' failed.

Richlv could reproduce it.

I added some debug logging and investigated. The error occurs because some actor attempts to put weapon #34 into the right hand. When loading the game it seems like weapon #34 is a knife - but csi.ods[34].isDummy is set to 1 and the knife is not loaded.

I cannot figure out where the weapon names and numbers and isDummy is defined.

trunk, r19821


===== Comments Ported from Sourceforge =====

====== nobody (2008-10-25 16:43:31) ======


====== richlv (2008-10-25 18:11:31) ======

adding a full bt, hopefully that helps at least a bit

ufo: src/client/cl_actor.c:4478: CL_AddActor: Assertion `add.model' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb6f3eb60 (LWP 27826)]
0xb7c27c66 in raise () from /lib/libc.so.6
(gdb) bt full
#0 0xb7c27c66 in raise () from /lib/libc.so.6
No symbol table info available.
#1 0xb7c29571 in abort () from /lib/libc.so.6
No symbol table info available.
#2 0xb7c20e60 in __assert_fail () from /lib/libc.so.6
No symbol table info available.
#3 0x08057747 in CL_AddActor (le=0xa40d9b0, ent=0xbfa154e4) at src/client/cl_actor.c:4478
add = {model = 0x0, angles = {0, 0, 0}, scale = {0, 0, 0}, origin = {0, 0, 0}, oldorigin = {0, 0, 0}, mins = {0,
0, 0}, maxs = {0, 0, 0}, tagent = 0x0, tagname = 0x0, skinnum = 0, alpha = 0, state = 0, flags = 0, as = {frame = 0,
oldframe = 0, backlerp = 0, time = 0, dt = 0, mesh = 0, list = "\000\000\000\000\000\000\000", lcur = 0 '\0',
ladd = 0 &#039;\0&#039;, change = 0 &#039;\0&#039;}, transform = {done = qfalse, processing = qfalse, matrix = {0 <repeats 16 times>}},
next = 0x0}
__PRETTY_FUNCTION__ = "CL_AddActor"
#4 0x08099058 in LE_AddToScene () at src/client/cl_le.c:1143
le = (le_t *) 0xa40d9b0
ent = {model = 0x1659b740, angles = {0, 270, 0}, scale = {0, 0, 0}, origin = {656, -80, 104}, oldorigin = {656,
-80, 104}, mins = {0, 0, 0}, maxs = {0, 0, 0}, tagent = 0x0, tagname = 0x0, skinnum = 0, alpha = 0, state = 0,
flags = 0, as = {frame = 33, oldframe = 33, backlerp = 0.949999988, time = 1000, dt = 50, mesh = 0,
list = "\v\000\000\000\000\000\000", lcur = 0 &#039;\0&#039;, ladd = 1 &#039;\001&#039;, change = 1 &#039;\001&#039;}, transform = {done = qfalse,
processing = qfalse, matrix = {0 <repeats 16 times>}}, next = 0x0}
modelOffset = {0, 0, 0}
i = 9
#5 0x080db2bb in V_RenderView () at src/client/cl_view.c:363
No locals.
#6 0x080c3687 in SCR_UpdateScreen () at src/client/cl_screen.c:543
No locals.
#7 0x0809e7c9 in CL_Frame (now=1220340, data=0x0) at src/client/cl_main.c:2345
delta = 51
last_frame = 1220340
#8 0x080fba9c in tick_timer (now=1220340, data=0x17e1560c) at src/common/common.c:1070
timer = (struct timer *) 0x17e1560c
old_interval = 20
lateness = 23
#9 0x080fbd37 in Qcommon_Frame () at src/common/common.c:1151
event = (struct event *) 0x1a6604d4
time_to_next = 0
#10 0x0813e1a7 in main (argc=1, argv=0xbfa15734) at src/ports/linux/linux_main.c:97
No locals.

====== tobixen (2008-10-25 19:52:25) ======

I managed to "work around" this bug by editing one line in src/client/cl_main.c:

===================================================================
--- src/client/cl_main.c (revision 19830)
+++ src/client/cl_main.c (working copy)
@@ -1559,13 +1559,18 @@
percent = 95.0f;

for (i = 0; i < csi.numODs; i++) {
- if (csi.ods[i].type[0] == &#039;\0&#039; || csi.ods[i].isDummy)
+ if (csi.ods[i].type[0] == &#039;\0&#039;)

...though I still don&#039;t know what isDummy is for, whether it&#039;s important or not, and where it&#039;s defined.
====== tlh2000 (2008-11-12 19:28:44) ======

This artifact has been marked as a duplicate of artifact 2219197 with reason:
No explanation provided.
Steps to reproduce this issue
Nothing entered.
Todos (0 / 0)
Issue created
footer_logo.png The Bug Genie 4.3.1 | Support | Feedback spinning_16.gif