Commit Graph

2218 Commits (8c6ca5cb914f460b88ef0697ac8f0d1dea1c638d)

Author SHA1 Message Date
Per Inge Mathisen f2cf35f791 Enumerating devices apparently crashes PulseAudio on Fedora12, so try to do this in a more
limited way and hope that either this fixes the problem, or someone fixes the issue upstream
meanwhile. This was fixed in a different way in 2.3 branch due to different sound init code.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8861 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:27:02 +01:00
Guangcong Luo 1526b124d2 Fix a crash caused by typo in trunk netcode in r7288.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8850 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:27:02 +01:00
Guangcong Luo bbba6f6ff8 Only delSocket if it actually exists (fix assert).
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8794 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:52 +01:00
Giel van Schijndel 34b50b4219 Fix the doxygen documentation for `addSocket` and `delSocket`
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8792 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:52 +01:00
Giel van Schijndel 64d8e39b38 Check for socket errors and handle them:
* Close a socket when an error occurs on it
 * Store the return values of send() and recv() in `ssize_t` instead of `int`
  - Prevents truncation of values as ssize_t is the return type specified by POSIX to use

This should prevent us from ever getting hit with SIGPIPE again.

SIGPIPE is transmitted when we try to write to a connection we've previously been told has closed.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8772 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:50 +01:00
Giel van Schijndel 46aa89779e Be more resiliant in the case of dangling pointers to a Socket
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8769 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:50 +01:00
Buginator f5b417e7d0 Remove unneeded abort that was already removed in 2.3
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8754 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:49 +01:00
Buginator 1fc98725c8 frontport r7797
"In inputLooseFocus(), we clear the keyboard/mouse to the init state (KEY_UP).

fixes ticket:515 "

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8750 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:48 +01:00
Buginator 5b2eabf0b5 Fix bad indentation on a merge that went astray
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8749 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:48 +01:00
Buginator 79037573f0 frontport r8717
"Add new flag to keep track of when Host is alive.

Add a popup window notification for when the Host drops, and also notify the host when *they* quit, that the game will be over for everyone else (because of the network model)

Fix heap corruption when the host's connection was severed in the NET_fillBuffer() function.

Fix a socket error when we tried to write to a NULL socket.

Note: added two strings that need translating"


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8743 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:47 +01:00
Buginator 38528c7524 fix typo (r8709)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8738 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:46 +01:00
Buginator 15413718c8 frontport r8672
"Update packet names for new packet types in log.


refs ticket:1185"


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8737 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:46 +01:00
Buginator d26716553b frontport r8671
"Reset flags for new people joining."

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8736 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:46 +01:00
Buginator 38f66c5f9e frontport r8667
"Rewrite the stupid file transfer routines.
* It will now only send the file to the person that needs it.

* Adds abort code to the file routines as well, and also tries to detect when the Host is using a malformed filename to host a map.

* Make sure user can't hit the 'ready' button when the map transfer is ongoing.

* Get rid of the silly delays (Much faster transfers)

NOTE: we are still capped by fps. 
fixes ticket:1128
fixes ticket:1127
refs ticket:215 (still can't transfer 'map packs')"

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8734 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:45 +01:00
Buginator 5a2509a26d frontport r8651
"Add config variable 'UPnP' to enable/disable UPnP detection / routines.  1=on, 0=off, default is ON.
"

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8732 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:45 +01:00
Buginator 098a1ea117 frontport r8650
"To prevent some confusion rename 'game' structure in netplay.c to gamestruct.

'game' is used as MULTIPLAYERGAME structure everywhere else, and it used GAMESTRUCT in netplay.c"


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8731 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:45 +01:00
Guangcong Luo ad7e87792d Use 32x32 cursors if unknown cursor type given.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8723 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:44 +01:00
Guangcong Luo bcef102074 Add small font for textdraw routines.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8720 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:44 +01:00
Christian Ohm 55f12a5d52 Hurd build fixes.
Closes #969.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8706 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:44 +01:00
Per Inge Mathisen e73697495e Forward port r8652 and r8626 (savegame fixing and breaking) from 2.3
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8696 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:42 +01:00
Christian Ohm cd36584441 Don't access UPnP device info after freeing it.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8676 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:41 +01:00
Per Inge Mathisen 5e16640ba3 Build fixes for netplay.c on OpenBSD, closes ticket:1180
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8675 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 20:26:41 +01:00
Giel van Schijndel fbec26f8e1 Improve compile time code checking:
* Use a version of STATIC_ASSERT that can be used as part of expressions
  - Taken from the Linux kernel (<linux/kernel.h>)
 * Add macro WZ_ASSERT_ARRAY which (statically) asserts that the given variable is an array
  - the given array needs to have a compile-time defined size
  - pointers will fail this assertion
 * Verify that the expression given to ARRAY_SIZE is truly an array
  - verify this using WZ_ASSERT_ARRAY_EXPR
 * Catch & fix two coding errors resulting from wrong use of some macros
  - macros: sstrcpy and ARRAY_SIZE

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8654 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:54 +01:00
Christian Ohm d808f72d8e Don't add UPnP redirects in single player skirmish.
Closes #1174.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8647 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:53 +01:00
Christian Ohm cd3ce412a3 Fix typos, reported by Paul Wise.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8646 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:53 +01:00
Guangcong Luo 9dc3cac6d6 [Having problems committing, so I'm seeing if I can commit this one file at a time] Continue fixing bug #1170: compile warning.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8643 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:53 +01:00
Guangcong Luo f6992d5719 sendTextMessage improvements - uses the position numbers again, and sends "(private to Player) message" instead of "0message". Also adds a shortcut for alliance chat: Use ".message" to send "(allies) message" to allies only.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8639 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:53 +01:00
Buginator b99b245e7f Turns out that we can't use GLee.h for all our openGL header needs, since GLee.h defines Status, and we also use that, so until we fix that either in GLee.h or our codebase, going to revert r8615/r8616
FIXME! (to be done later)

closes ticket:153

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8618 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:51 +01:00
Buginator c6747b1606 Don't use SDL_opengl.h, instead, use GLee.h to handle all our openGL needs.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8617 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:51 +01:00
Buginator 3665f20498 Use the correct header file when using openGL, instead of the more complex #if/else/endif block.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8616 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:51 +01:00
Guangcong Luo d91693afb2 Hardware-accelerated cursors work correctly in Mac OS X now.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8610 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:49 +01:00
Guangcong Luo 6519ce48e9 Use GLuint correctly (fixes build errors and warnings caused by other fixes).
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8608 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:49 +01:00
Buginator 9445f60753 Actually use GLuint instead of pretending to be GLuint.
patch by stiv.
Closes ticket:1148

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8604 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:48 +01:00
Guangcong Luo aabbca68d8 Move map download progress to players list, so you can still chat while it happens. Also update players list instantly, instead of every 2 seconds (except slider changes, which are updated every 0.5 seconds). Also fix taken position detection (fixes bug #1137).
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8602 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:48 +01:00
Guangcong Luo 8edc0bd26a Allow AI difficulty slider to be dragged for longer than 2 seconds.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8600 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:48 +01:00
Guangcong Luo c6e474a482 Revert r8584/r8585 since they're causing too many problems in Linux for me to deal with right now. Fixes bugs #1121 and #1123.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8590 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:47 +01:00
Guangcong Luo fa4f0798ba Fix a bug where a long was dereferenced from an int pointer.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8584 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:46 +01:00
Christian Ohm 5a5e5d6510 Threaded UPnP device detection.
Increases the timeout to 2 seconds. Closes #1073.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8564 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:45 +01:00
Buginator e8d4d378a8 Add UPnP detection results to the Crash dump.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8557 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:45 +01:00
Buginator 25b9dc9ba6 Add more documentation about the Map issues and note in logs about map transfers (if exists / file size mismatch)
(r8548/r8549)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8555 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:45 +01:00
Buginator a1ec0bd358 Clarify variables by prefix of _64 for 64bit and _32 for 32bit...
(r8546)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8553 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:44 +01:00
Buginator 8018d99190 Add new message of NET_HOST_DROPPED to deal with when host quits game, we should quit as well (lobby)
Add more debug lines when we drop/leave players
(r8538)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8550 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:44 +01:00
Buginator b307503d56 Slightly rework when we should and shouldn't chop strings based on if the tech level is present or not.
Also add more debug lines to see if this issue crops up again.

Fixes ticket:1104
(r8533)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8534 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:15 +01:00
Buginator f76f352bd0 Add error checking to socketClose()
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8532 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:15 +01:00
Buginator 49f164b23f Fix a out-of-order list
(r8516)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8530 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:15 +01:00
Buginator 0d2a13a119 Fix a strange issue on some laptops, that have mapped their numpad enter key to the normal "return/enter" key.
Either key can now be used to submit the text your typing.

This fixes ticket:1055
NOTE: We *still need* unicode support!
(Multibyte support, and we should NOT use char, we need to switch to wchar_t)

(r8425)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8527 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:14 +01:00
Buginator cc76454b69 Fix the missing header file for the setPlayerColour() function.
(r8411)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8525 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:14 +01:00
Buginator a72cb7295a Transmit and set local color array. Fixes picking of team color bug.
Transmit player map position & handle picking of players correctly. fixes ticket:1075

Enable/disable AIs on maps. fixes ticket:1065

(r8410)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8524 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:14 +01:00
Buginator 06e0716a14 *Change* MaxMsgSize is now 16K
*Change* MAX_BYTESPERSEC is now 14K (was hitting limit in 4p games old limit was 6K)
*Change* relax timings of ping & scoreboard to alleviate the bandwidth strain a bit
(r8381)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8520 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:13 +01:00
Buginator d6e70a3c00 Filter out non-ASCII in our debug line
(r8380)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8519 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-28 19:34:13 +01:00