Author Topic: 3.6.10 Release Candidate 3 (RC3) Now Available!  (Read 33929 times)

0 Members and 1 Guest are viewing this topic.

Offline blowfish

  • 211
  • Join the cult of KILL MY ROUTER!!!!!!!!!!1
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Turns out the game asserts with that when a ship has 4 or more banks in a single turret, not an invalid set of integers like what I found by searching the forums.

Yes, note that turret weapon banks are similar to fighter banks, in that you can only have three primaries or four secondaries.  Note that banks don't really correspond to firepoints.

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Some time ago I got very large number of assertions ,here: http://www.hard-light.net/forums/index.php/topic,62714.0.html
is a thread where I asked for help ,if you get an assertion ,you may check this thread out ,Kajorama and Wanderer helped me solve quite a lot of them.

 
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
As always, use Mantis for any new bugs, or if you can't activate your account, post here.
I'm not receiving the confirmation email, and I will forget, so...
When building I'm getting this from the openSUSE automatic test tools:
Code: [Select]
I: A function overflows or underflows an array access. This could be a real error,
   but occasionaly this condition is also misdetected due to loop unrolling or strange pointer
   handling. So this is warning only, please review.
W: fs2_open arraysubscript ai/aicode.cpp:7043
W: fs2_open arraysubscript hud/hudwingmanstatus.cpp:685, 686
aicode.cpp is a
Code: [Select]
if (current_bank == -1) {
swp->next_secondary_fire_stamp[current_bank] = timestamp(500);
return rval;
}
funny, but if that '-' isn't a typo I suppose you know what you are doing.

But the hud one seems like a real bug. Inside a "for ( i = 0; i < MAX_SHIPS_PER_WING; i++ ) {" loop (being MAX_SHIPS_PER_WING == 6) you are doing a
Code: [Select]
sx = HUD_wingman_status_single_coords[gr_screen.res][i][0];
sy = HUD_wingman_status_single_coords[gr_screen.res][i][1];
with
Code: [Select]
int HUD_wingman_status_single_coords[GR_NUM_RESOLUTIONS][4][2] = Since 6>4... bug?



And... since when nobody compiles wxFRED? :lol:
- To compile it in a modern system, wx-config must be called with "--unicode=no".
- The wxFRED_SOURCES variable misses 3/4 of the source files.
- Compile with "-DEMBED_XRC_RESOURCES" requires a missing wxfred_xrc.inl file. I, that don't talk autotools language, have fixed it adding
Code: [Select]
wxfred2/wxfred_xrc.cpp: wxfred2/wxfred_xrc.inl

wxfred2/wxfred_xrc.inl:
wxrc -c -o wxfred2/wxfred_xrc.inl wxfred2/wxfred.xrc
to code/Makefile.am.
« Last Edit: June 02, 2009, 10:45:13 pm by RedDwarf »

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Not sure about that aicode line, but the hud line is a nice catch.  The 6>4 overflow will only happen if the mission only contains one player wing, and that wing contains six ships.  That almost never happens, but it is still possible.  (And it might become more common in the future if the interface art is upgraded for six ships.)

Fixed in both 3.6.10 and trunk. :)

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
I'd think that the aicode bug would happen somewhat often in various situations, so I have to wonder why we've never seen it before.  And it's a retail bug too. :wtf:

From the looks of that it seems like we just got lucky and earlier checks end up making sure that it doesn't get to that function if the current secondary weapon is -1.  It does point out a similar problem in aibig though:

Code: [Select]
int current_bank = tswp->current_secondary_bank;
weapon_info *swip = &Weapon_info[tswp->secondary_bank_weapons[current_bank]];

where current_bank is checked to be valid on the next line, after it's already been used.  There is another one like that in aicode as well.  I see similar problems with current_primary_bank in some places too.  And again, it seems to try and work it out in other functions such that it doesn't happen, but the whole thing seems extremely error prone.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Good catches.  Also, no one's been working much on wxFRED these days.  We'll probably be trying to do a wxLauncher soon though, so those might still be good to know.  wxFRED might come after the launcher.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
The aicode one is definately a bug.
But, it's probably grabbing the value from next_primary_fire_stamp[2] (if I remember how structs are laid out)
I'm pretty sure it should be !=

I'm a bit curious about the wingmen one. I'd flag it as a bug, but I would've expected a crash. Dereferencing higher in that array should do bad stuff (think about the layout of the array in memory)!
STRONGTEA. Why can't the x86 be sane?

 

Offline Echelon9

  • 210
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Dereferencing higher in that array should do bad stuff (think about the layout of the array in memory)!
It's not a dereference here, it's a write. - Not enough sleep it seems.... But yeh, either way it would lead to an operation on memory that is adjacent to the actual array == bad stuff happens.

Nice finds RedDwarf!
« Last Edit: June 03, 2009, 02:45:36 am by Echelon9 »

 
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
nope, definately a dereference - it's gotta dereference the value at 'i' in the array HUD_wingman_status_single_coords[gr_screen.res] and then it's gotta dereference that to get element 0 :P

Code: [Select]
sx = HUD_wingman_status_single_coords[gr_screen.res][i][0];

Unless I've got my terminology half-backwards.
STRONGTEA. Why can't the x86 be sane?

  

Offline Echelon9

  • 210
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Oh **** sorry, I was looking at the aicode one, but reading the last section of your post where you talk about the dereference. My bad :(

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
I'm a bit curious about the wingmen one. I'd flag it as a bug, but I would've expected a crash. Dereferencing higher in that array should do bad stuff (think about the layout of the array in memory)!
It is a crash, but due to traditional mission design, it is a crash that has most likely never been attempted.  It can only happen if a) the player's wing is the only wing present; and b) the player's wing has more than four ships.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
And it's very rare for someone to stick more than 4 ships in a player wing because the loadout can't show the last two.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline FUBAR-BDHR

  • Self-Propelled Trouble Magnet
  • 212
  • Master Drunk
    • 165th Beer Drinking Hell Raisers
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Believe me it's been attempted many times.  I know I've done it a few.   Probably why that warning got added to FRED about player wings having more than 4 ships. 
No-one ever listens to Zathras. Quite mad, they say. It is good that Zathras does not mind. He's even grown to like it. Oh yes. -Zathras

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Can you try to make a scramble mission with a six-ship Alpha wing being the only wing present?  That's the only situation I can think of that might trigger the bug.

 

Offline sigtau

  • 29
  • unfortunate technical art assclown
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
I can't activate my Mantis account.
Who uses forum signatures anymore?

 

Offline achtung

  • Friendly Neighborhood Mirror Guy
  • 210
  • ****in' Ace
    • Freespacemods.net
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Maybe I'll get time to try this out tomorrow.
FreeSpaceMods.net | FatHax | ??????
In the wise words of Charles de Gaulle, "China is a big country, inhabited by many Chinese."

Formerly known as Swantz

 
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
I can't activate my Mantis account.

We know. We're working on it!  :nod:
STRONGTEA. Why can't the x86 be sane?

 

Offline FUBAR-BDHR

  • Self-Propelled Trouble Magnet
  • 212
  • Master Drunk
    • 165th Beer Drinking Hell Raisers
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Can you try to make a scramble mission with a six-ship Alpha wing being the only wing present?  That's the only situation I can think of that might trigger the bug.

Sorry missed that reply somehow.  I'll give it a shot since no one else has.


Well nothing I tried produced a crash even in 3.6.10 RC3.  I put the status dots for the 2 fighters in a weird place (center of the screen above the targeting) but worked.  Latest 3.6.11 only resulted in a problem if all 6 ships were player ships in multi.  Figured it would.  Didn't crash but gave a ships without primaries warning window when I tried to commit and I had to escape out.  Didn't try client side. 
« Last Edit: June 08, 2009, 12:20:59 am by FUBAR-BDHR »
No-one ever listens to Zathras. Quite mad, they say. It is good that Zathras does not mind. He's even grown to like it. Oh yes. -Zathras

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Did you try anything prior to RC3?  Did you try single-player?

 

Offline FUBAR-BDHR

  • Self-Propelled Trouble Magnet
  • 212
  • Master Drunk
    • 165th Beer Drinking Hell Raisers
Re: 3.6.10 Release Candidate 3 (RC3) Now Available!
Didn't try anything before RC3 but I did try RC3 in single. 
No-one ever listens to Zathras. Quite mad, they say. It is good that Zathras does not mind. He's even grown to like it. Oh yes. -Zathras