Commit graph

7922 commits

Author SHA1 Message Date
Bill Currie
4c69a97ac7 Allow normal declarations within a class implementation.
I had always been under the assumption that such was illegal in
Objective-C, but after working on Forge, I now know otherwise.
2011-01-03 16:25:29 +09:00
Bill Currie
dc5bafb8fb Minimal error recovery.
No more bailing on the first syntax error. While the recovery is not
perfect (things can get right twisted), qfcc will now continue parsing
after a syntax error.
2011-01-03 16:25:29 +09:00
Bill Currie
a4635d79e8 Slightly more informative error locations.
Inside a class or protocol definition is not "at top level" ;)
2011-01-03 16:25:29 +09:00
Bill Currie
530e8fae34 Rework class_type_t to be more useful.
This allows current_class to refer to procols as well (for error
reporting).
2011-01-03 16:25:29 +09:00
Bill Currie
f738ef5dba Remove redundant RETURN statement rule.
The same effect can be achieved with one rule using opt_expr.
2011-01-03 16:19:28 +09:00
Bill Currie
58042719e5 A little more documentation for expressions. 2011-01-03 16:19:28 +09:00
Bill Currie
526564b2a7 New default plugin directory.
Change the default plugin directory from ${libdir}/quakeforge to
${libdir}/quakeforge/plugins as this seems to be fairly standard.
2011-01-03 16:19:28 +09:00
Jeff Teunissen
999252c07a Fix the same (ancient!) bug in ipv4 code...
Don't read the address of the peer until we know we've actually read
a packet.
2010-12-30 07:15:22 -05:00
Jeff Teunissen
e6b75600e8 Debian: enable ipv6 by default 2010-12-30 06:39:04 -05:00
Jeff Teunissen
1b23c470cb Fix unknown family msgs
Found the source of all the bogus "unknown address family" messages --
reading the returned address of an errored read. D'oh!
2010-12-30 06:38:20 -05:00
Jeff Teunissen
9e0575313e Net debugging
Add a SYS_NET developer mask for debugging network, and use it.
2010-12-30 05:01:58 -05:00
Jeff Teunissen
e96cbbdbd9 Captain Whitespace(tm) is back.
Don't judge me... :)
2010-12-30 04:58:49 -05:00
Jeff Teunissen
5cfce584c9 ipv4 formatting changes
IPv4 addresses should be formatted identically to how we're used to seeing
them, without the brackets that denote an IPv6 address and separate it from
the port specification.
2010-12-30 04:46:44 -05:00
Jeff Teunissen
e7462d025f Call freeaddrinfo() when done with the address info. 2010-12-30 04:34:15 -05:00
Jeff Teunissen
e89fb3a868 Nuke a structure I didn't need. 2010-12-30 04:30:16 -05:00
Jeff Teunissen
0a21f6a6df Move a comment where it belongs 2010-12-30 03:43:46 -05:00
Jeff Teunissen
87dd61a6f8 Fix IPv4 interaction
Can now talk to IPv4 hosts again.
2010-12-30 03:42:22 -05:00
Jeff Teunissen
878a9cfb6a ipv6: builds and works now, still can't interact with ipv4 clients/servers 2010-12-29 07:47:15 -05:00
Jeff Teunissen
fdb4d885ae ipv6: start cleaning up strict-aliasing problems. 2010-12-29 06:58:14 -05:00
Jeff Teunissen
cdf5ef2565 ipv6: Fix glibc defines 2010-12-29 06:36:43 -05:00
Jeff Teunissen
ec11282a33 fix worldspawn sky keys in NQ.
sky/skyname/qlsky rather than sky/skyname/skyname :)
2010-12-28 15:03:58 -05:00
Jeff Teunissen
9f596df607 QW skybox handling
Since we clip the world properly even with skyboxes active, and the
'skybox' serverinfo doesn't do anything in any other engine I know of,
nuke the 'skybox' serverinfo entirely and use a nice short semi-standard
name ("sky") for the serverinfo containing the map's preferred skybox
(as potentially modified by the .ent file on the server).
2010-12-28 15:02:56 -05:00
Jeff Teunissen
8394b12528 ignore the qwtv eps/png files. 2010-12-28 14:57:43 -05:00
Bill Currie
3090a64faa Use the correct param for the full_new path.
This fixes the broken downloads.

*taniwha dons a brown paper bag.
2010-12-28 14:44:26 -05:00
Bill Currie
6e18c3df85 Make qfs developer prints a little more controllable. 2010-12-28 09:08:51 +09:00
Bill Currie
7946fec523 More cString cleanups.
I don't know that fileSystemRepresentation is any better than cString for
general usage (due to wchar on windows).
2010-12-28 07:42:08 +09:00
Bill Currie
d29e8deb0a Use Qprintf for writing maps, and fileSystemRepresentation to get the path. 2010-12-27 23:18:43 +09:00
Bill Currie
dc99bc19c5 Make sure the r_skyname serverinfo key gets cleared on map change.
This ensures that the map's sky is always used unless the client itself has
set its r_skyname cvar.  The server's r_skyname cvar is now the default
name for the skybox for when the map does not specify one. The map's sky
worldspawn field overrides this. The r_skyname cvar is no longer a
serverinfo cvar.
2010-12-27 23:12:46 +09:00
Bill Currie
1f0851cc61 Fix QFS_FilelistFill for pak files.
Forgot to ensure the path separator was included in the fnmatch param. This
fixes the broken *list commands.
2010-12-27 10:31:54 +09:00
Bill Currie
fd96376b43 Forget skybox, it's r_skyname we want.
skybox has been irrelevent since I did that zclip hack for
skyboxes/skydome.
2010-12-27 10:03:37 +09:00
Bill Currie
fdd59b9851 Support entity files in the client too.
I'd forgotten about .ent files when I wrote the client side map parsing
(fog/sky) support.
2010-12-27 09:34:24 +09:00
Bill Currie
97e8ab7f3a A bunch more NSString and NSFileManager usage.
It does make for cleaner could, though it would have been nice if NSData
was null terminated :P
2010-12-26 22:33:04 +09:00
Bill Currie
8e13a8327d Use NSFileManager methods instead of access().
This even fixes a bug where an inaccessible bspSound was being opened.
2010-12-26 21:07:55 +09:00
Bill Currie
f105fbd6a0 Use NS* classes for QUAKED directory scanning.
The scanning of actual files is still done using normal C strings, but now
everything up to (but not including) opening the file is handled by *step.
2010-12-26 20:45:01 +09:00
Bill Currie
232c67640c Get the QUAKED text for nullclass right.
? is not a character that's lexed out by the script class.
This fixes the segfault when loading a map when no entities are defined
(ie, the mod's source code could not be found for QUAKED).
2010-12-26 19:06:39 +09:00
Bill Currie
70783e4bd5 Disable all sound calls if jack could not be contacted.
This fixes the file handle leak when jack is unavailable.
2010-12-25 20:31:14 +09:00
Bill Currie
90fcbefaff Don't use entity_t's next for linking static enitities. 2010-12-25 19:59:34 +09:00
Bill Currie
14480fd1b4 Move the call to R_ClearEnts to the renderer.
This fixes the hang on certain maps in qw-client.
2010-12-25 19:59:34 +09:00
Bill Currie
e65d1a7ccf Remove a redundant assignment. 2010-12-25 19:59:34 +09:00
Jeff Teunissen
9defba8d92 Get rid of plugin versioning (again).
automake needs -avoid-version to be in Makefile.am, otherwise it doesn't
make libtool do the right thing...or something. My head hurts. ;)
2010-12-25 04:45:39 -05:00
Jeff Teunissen
7161000e10 Stop running ldconfig so damn much.
Also, more nuked files -- and see, I remembered there's a makefile in
this dir... :)
2010-12-25 02:32:44 -05:00
Bill Currie
dea8f548cf Fix for make dist. 2010-12-25 14:04:17 +09:00
Jeff Teunissen
485bff62bd Clean up lintian warnings/errors
After this, should mostly be sonames and no-man-pages problems.
2010-12-24 17:12:58 -05:00
Jeff Teunissen
8653f9d9a7 Add a man page for zpak
It's lame, but so is zpak :)
2010-12-24 16:23:52 -05:00
Jeff Teunissen
b874c28ad5 debian: fill out control
Clean up some lintian warnings, move some packages into more appropriate
sections.
2010-12-24 15:49:45 -05:00
Jeff Teunissen
e1843f6273 debian: Don't do make .shlibs for plugins 2010-12-24 15:47:55 -05:00
Jeff Teunissen
af8e2020da Tweak Debian package build
dh_strip -Xqfcc causes qfcc itself to not get stripped -- explicitly
disallow stripping of only lib/qfcc

Also, disable Werror in debian builds and make sure quakeforge-stub looks
in the same place the engine will.
2010-12-24 13:55:26 -05:00
Jeff Teunissen
42ba169024 tell dpkg-source we're using source format 1.0 2010-12-24 13:52:07 -05:00
Jeff Teunissen
3f5f08539d Set up (almost) the right dependencies.
add DGA / vidmode dev packages, libcurl-dev (may need to pick one explicitly though)
2010-12-24 13:51:43 -05:00
Bill Currie
526f132517 Minor tweaks. 2010-12-24 20:08:24 +09:00