Author Topic: Antipodes #1  (Read 7382 times)

0 Members and 1 Guest are viewing this topic.

This is Antipodes build #1

Antipodes is a staging ground for changes that will eventually make their way into trunk. Antipodes should not be considered stable.

About this build:
This build incorporates Trunk to 5485 and has had safe_strings applied across the entire codebase to any statically declared array.
There are approximately 1000 new uses of the safe_strings code.
Buffers declared dynamically have, for the most part, been left alone. There have been two changes to make dynamic buffers in scripting.cpp use safe_strings.
This build will pick up if you're overrunning a static buffer (or one of the changed dynamic buffers).
Any safe_strings errors should be reported!

Thanks, portej05.

EDIT: Updated filenames

Antipodes (normal):
FSO:
fs2_ant_1d - Debug
fs2_ant_1r - Release
FRED2:
fred2_ant_1d - Debug
fred2_ant_1r - Release
Antipodes (INF):
FSO:
fs2_ant_1d_INF - Debug
fs2_ant_1r_INF - Release
FRED2:
fred2_ant_1d_INF - Debug
fred2_ant_1r_INF - Release
« Last Edit: July 24, 2009, 06:49:54 am by portej05 »
STRONGTEA. Why can't the x86 be sane?

 

Offline Echelon9

  • Moderator
  • 210
And OS X builds for those interested:

FS2_Open Antipodes 1 (includes Release and Debug builds)

 

Offline Zacam

  • Magnificent Bastard
  • Administrator
  • 211
  • I go Sledge-O-Matic on Spammers
    • Minecraft
    • Steam
    • Twitter
    • ModDB Feature
portej: Combine the FSO and FRED into one ZIP with the INF EXE and FRED into another ZIP.

Saves space, links and is less cumbersome.

I'd like to make some Antipodes Icons to have the exes show, any objection?
Report MediaVP issues, now on the MediaVP Mantis! Read all about it Here!
Talk with the community on Discord
"If you can keep a level head in all this confusion, you just don't understand the situation"

¤[D+¬>

[08/01 16:53:11] <sigtau> EveningTea: I have decided that I am a 32-bit registerkin.  Pronouns are eax, ebx, ecx, edx.
[08/01 16:53:31] <EveningTea> dhauidahh
[08/01 16:53:32] <EveningTea> sak
[08/01 16:53:40] * EveningTea froths at the mouth
[08/01 16:53:40] <sigtau> i broke him, boys

 
I'd like to make some Antipodes Icons to have the exes show, any objection?

None whatsoever.
STRONGTEA. Why can't the x86 be sane?

 

Offline Colonol Dekker

  • HLP is my mistress
  • 213
  • Aken Tigh Dekker- you've probably heard me
    • My old squad sub-domain
Curious, what do you use to make the icons?
Campaigns I've added my distinctiveness to-
- Blue Planet: Battle Captains
-Battle of Neptune
-Between the Ashes 2
-Blue planet: Age of Aquarius
-FOTG?
-Inferno R1
-Ribos: The aftermath / -Retreat from Deneb
-Sol: A History
-TBP EACW teaser
-Earth Brakiri war
-TBP Fortune Hunters (I think?)
-TBP Relic
-Trancsend (Possibly?)
-Uncharted Territory
-Vassagos Dirge
-War Machine
(Others lost to the mists of time and no discernible audit trail)

Your friendly Orestes tactical controller.

Secret bomb God.
That one time I got permabanned and got to read who was being bitxhy about me :p....
GO GO DEKKER RANGERSSSS!!!!!!!!!!!!!!!!!
President of the Scooby Doo Model Appreciation Society
The only good Zod is a dead Zod
NEWGROUNDS COMEDY GOLD, UPDATED DAILY
http://badges.steamprofile.com/profile/default/steam/76561198011784807.png

 

Offline captain-custard

  • previously known as andicirk
  • 210
  • one sandwich short of a picnic
Curious, what do you use to make the icons?

stubby crayons
"Duct tape is like the force. It has a light side, a dark side, and it holds the universe together."

 

Offline Zacam

  • Magnificent Bastard
  • Administrator
  • 211
  • I go Sledge-O-Matic on Spammers
    • Minecraft
    • Steam
    • Twitter
    • ModDB Feature
Heh. That would actually look really cool if I scanned them right. Or hell, I'll just draw on the scanner glass.

Failing that, Photoshop with an ICO format plug-in.

Oh, right. Actual reporting: So, my first run on regular shows nearly equivalent to SSE builds in terms of performance, and no anomalous behavior that I can accredit to the exe.
« Last Edit: July 26, 2009, 01:55:56 pm by chief1983 »
Report MediaVP issues, now on the MediaVP Mantis! Read all about it Here!
Talk with the community on Discord
"If you can keep a level head in all this confusion, you just don't understand the situation"

¤[D+¬>

[08/01 16:53:11] <sigtau> EveningTea: I have decided that I am a 32-bit registerkin.  Pronouns are eax, ebx, ecx, edx.
[08/01 16:53:31] <EveningTea> dhauidahh
[08/01 16:53:32] <EveningTea> sak
[08/01 16:53:40] * EveningTea froths at the mouth
[08/01 16:53:40] <sigtau> i broke him, boys

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Zacam, I'd already pointed out to him on IRC that a 7z of the full set is smaller than any individual exe :)
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

 

Offline Zacam

  • Magnificent Bastard
  • Administrator
  • 211
  • I go Sledge-O-Matic on Spammers
    • Minecraft
    • Steam
    • Twitter
    • ModDB Feature
Yeah, but  I figured here would help too. Less likely to forget a static post that won't go anywhere.  :D
Report MediaVP issues, now on the MediaVP Mantis! Read all about it Here!
Talk with the community on Discord
"If you can keep a level head in all this confusion, you just don't understand the situation"

¤[D+¬>

[08/01 16:53:11] <sigtau> EveningTea: I have decided that I am a 32-bit registerkin.  Pronouns are eax, ebx, ecx, edx.
[08/01 16:53:31] <EveningTea> dhauidahh
[08/01 16:53:32] <EveningTea> sak
[08/01 16:53:40] * EveningTea froths at the mouth
[08/01 16:53:40] <sigtau> i broke him, boys

 
Don't worry folks, message received :P
The next build will be done like that.
STRONGTEA. Why can't the x86 be sane?

 
i'm getting error with the two antipodes build with my mod for now :
Code: [Select]
Assert: 0
File: safe_strings.cpp
Line: 70
ERANGE: String error @ c:\users\hery\desktop\fs2_open\code\cfile\cfilesystem.cpp (570). Please Report
Trying to put into 32 byte buffer:
MetalBrossMaterial-littledark.dds

ntdll.dll! NtWaitForSingleObject + 21 bytes
kernel32.dll! WaitForSingleObjectEx + 67 bytes
kernel32.dll! WaitForSingleObject + 18 bytes
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
fs2_open_3_6_11d.exe! <no symbol>
kernel32.dll! BaseThreadInitThunk + 18 bytes
ntdll.dll! RtlInitializeExceptionChain + 99 bytes
ntdll.dll! RtlInitializeExceptionChain + 54 bytes

Tha't s a 256*256 dds texture for now and i wonder why i got an error with it?
$Formula: ( every-time
   ( has-time-elapsed "0" )
   ( Do-Nothing
   )
   ( send-message
      "#Dalek"
      "High"
      "Pro-crasti-nate"
   )
   )
)
+Name: Procratination
+Repeat Count: 99999999999
+Interval: 1

 

Offline The E

  • He's Ebeneezer Goode
  • Moderator
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Filename too long, I'd guess.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 
Ok that was the problem (dropbox conflict was another source of problem too)
$Formula: ( every-time
   ( has-time-elapsed "0" )
   ( Do-Nothing
   )
   ( send-message
      "#Dalek"
      "High"
      "Pro-crasti-nate"
   )
   )
)
+Name: Procratination
+Repeat Count: 99999999999
+Interval: 1

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Also, any texture basename should probably not have hyphens in it.  Those are normally used when denoting a texture as a normal, shine, etc with *-normal, *-shine, respectively.  That's also a concern when naming textures because -normal takes up 7 characters in the 32 char filename buffer, the extension takes up 4, the null terminator takes up one, so you're only left with 20 for a texture base name if it might ever have a shine, normal, etc counterpart.
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

 

Offline Echelon9

  • Moderator
  • 210
Ok, something odd went on for Mac OS X and the Debug builds.

  • Testing Antipodes 1 Debug build, everything works fine.
  • However, due to a change occurring between r5491 and r5493 in trunk - which should just be the Antipodes 1 changes - Debug builds (using standard mediavp data and the same install) now opens and then closes rapidly, with the fs2_open.log looking like this:

Code: [Select]
==========================================================================
DEBUG SPEW: No debug_filter.cfg found, so only general, error, and warning
categories can be shown and no debug_filter.cfg info will be saved.
==========================================================================
Opened log '/Users/rhyskidd/Library/FS2_Open/data/fs2_open.log', Sun Aug 23 20:11:57 2009 ...
FreeSpace version: 3.6.11
Passed cmdline options:
  <none>
 

Funny thing is that all Retail builds since r5493 work fine on Mac OS X (hence why it hasn't been noticed until now).

 
OK, 5492 is the commit that's most likely to have caused this (5491 is restrict semantics - not actually used anywhere set, 5493 is REMOVING some instances of safe_strings)
Will update here if I find anything

E9: I'm assuming it was a crash, but got any ideas where?
I've checked cmdline.cpp and the only changes from 5491 in there were to linux builds only.
« Last Edit: August 23, 2009, 07:41:47 am by portej05 »
STRONGTEA. Why can't the x86 be sane?

 

Offline Echelon9

  • Moderator
  • 210
Yup, I'm sure it's caused by something in r5492 - it's just r5493 with the small changes is the first that builds successfully with GCC.

Code: [Select]
$ gdb FS2_Open\ r5493\ \(debug\).app/
GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin"...Reading symbols for shared libraries ................. done

(gdb) r
Starting program: /Applications/Freespace 2 Open/FS2_Open r5493 (debug).app/Contents/MacOS/FS2_Open (debug)
Reading symbols for shared libraries +++++++++++++++............................................................................... done
Reading symbols for shared libraries .. done
Future debug output directed to: /Users/xxxx/Library/FS2_Open/data/fs2_open.log
Error: "FreeSpace2/Fred2 cannot be run from a drive root directory!"

Program exited with code 01.
(gdb)

So it looks like the code around cfile.cpp:183 is being hit, and cfile_init() gets called at freespace.cpp:1973. I looked earlier at the code block peculiar to OS X between freespace.cpp:1953-1963, especially what's being done by safe_strings functions to char whee[MAX_PATH_LEN]. Your thoughts on that?
« Last Edit: August 23, 2009, 09:50:57 am by Echelon9 »

 
It wouldn't be getting as far as cfile_init if it was a safe_strings issue.
That strncpy(whee, full_path, MAX_PATH_LEN-1); should probably be strcpy_s(whee, full_path) (there's a lot of places this could be done).
cfile_in_root_dir is a bit hacky...

Is it possible to get the contents of the variables passed to cfile_init?
STRONGTEA. Why can't the x86 be sane?

 

Offline Echelon9

  • Moderator
  • 210
Using this applied patch:
Code: [Select]
Index: code/cfile/cfile.cpp
===================================================================
--- code/cfile/cfile.cpp (revision 5532)
+++ code/cfile/cfile.cpp (working copy)
@@ -164,6 +164,8 @@
 //
 int cfile_init(char *exe_dir, char *cdrom_dir)
 {
+ mprintf(( "cfile_int(): exe_dir '%s'\n", exe_dir ));
+ mprintf(( "cfile_int(): cdrom_dir '%s'\n", cdrom_dir ));
  int i;
 
  // initialize encryption

...a Debug run causes fs2_open.log to looks like this:
Code: [Select]
==========================================================================
DEBUG SPEW: No debug_filter.cfg found, so only general, error, and warning
categories can be shown and no debug_filter.cfg info will be saved.
==========================================================================
Opened log '/Users/xxxxx/Library/FS2_Open/data/fs2_open.log', Mon Aug 24 23:10:51 2009 ...
FreeSpace version: 3.6.11
Passed cmdline options:
  <none>
cfile_int(): exe_dir 'fs2.exe'
cfile_int(): cdrom_dir '(null)'

 
That's a little weird, gotta say fs2.exe?
It's also why it thinks it's in a root directory.

We probably need to figure out why this is the case :P
STRONGTEA. Why can't the x86 be sane?