Thomas Adam | 24 Mar 21:01 2015

PATCH [PULL-REQUEST]: Modernise function prototypes


The following changes since commit 34b24704e5f5af21466a1aae06b9135b1e001b90:

  remove OS X theme folder (2014-10-24 22:27:31 -0700)

are available in the git repository at: ta/tidy-prototypes

for you to fetch changes up to 095bf778fc51e2662406b80c700f175e3a1ae17b:

  winboard/wsettings: Modernise function prototypes (2015-03-24 19:56:55 +0000)

This is step one in my attempt to start cleaning up the code slightly.
There should be no functional changes whatsoever, and the changes are to
remove the P() macro and add things like missing 'void' to function
protoypes, etc.

I've chunked these changes into separate files to try to make them
easier to review, although I've only been able to give the winboard
changes a cursory check as I cannot compile that.

I note that Savannah is still not up to date with HGM's changes; that's
OK, and if people are happy with the sorts of changes I've done, I can
always update that moving forward.  It's always difficult to get
complete coverage to changes like this as code is a moving target

The diffstat is below.  Any questions, or comments, do please ask.
(Continue reading)

Joshua Pettus | 21 Mar 20:48 2015

Fwd: [PATCH 1/2] Fix segfault with 'Game List Tags' dialogue

Begin forwarded message:

Subject: Re: [XBoard-devel] [PATCH 1/2] Fix segfault with 'Game List Tags' dialogue
From: Joshua Pettus <jshpettus <at>>
Date: March 21, 2015 at 3:48:00 PM EDT
To: "H.G. Muller" <h.g.muller <at>>

Also, it’s a real pain to install old compilers in cygwin.  You basically have to compile them yourself.  They really don’t want you to do it.

On Mar 21, 2015, at 3:44 PM, Joshua Pettus <jshpettus <at>> wrote:

On Mar 21, 2015, at 3:09 PM, H.G. Muller <h.g.muller <at>> wrote:

Thomas Adam schreef op 3/21/2015 om 2:06 PM:
The winboard/makefile.gcc file suggests that it can be cross-compiled, yet
it's clearly not received any love for sometime, since there's calls to
-mno-cygwin which have been deprecated options to GCC---and in more recent
versions have been completely removed (hence 'make -f makefile.gcc' now
errors out).
The WinBoard binary that I distribute is compiled by gcc 3.4.4 for that reason.
Newer versions indeed did not seem to work, and I never could figure out how to
produce a native Windows binary with those. So I stuck to 3.4.4, which does the job fine

My understanding, the reason -mno-cygwin was removed because you can install the
mingw gcc compilers instead, which basically do the same thing.  Only when I tried it a couple days ago, it got hung up on wbres.o

something about not recognizing the file type, which is strange…


Thomas Adam | 20 Mar 15:42 2015

[PATCH 1/2] Fix segfault with 'Game List Tags' dialogue

If there are no game lists, the Game List Tags dialogue will still try and
operate on data which doesn't exist, resulting in a crash.  Since it's still
useful to manipulate the tags before loading game lists, still allow this, but
don't let XBoard crash as a result.
 ngamelist.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ngamelist.c b/ngamelist.c
index d202ad6..9b1b0d7 100644
--- a/ngamelist.c
+++ b/ngamelist.c
 <at>  <at>  -223,6 +223,9  <at>  <at>  GameListReplace (int page)
 GameListUpdate ()
+    if (glc == NULL)
+        return;
     GameListPrepare(False, False);


Thomas Adam | 19 Mar 21:56 2015

C89/C99/ANSI compliance - cleanups needed?


I was looking at the XBoard code as I've a few patches I intend to send
out, in the form of bugfixes and a few little features, etc., and in
doing so have noticed a few things which have irritated me enough to ask
some questions, as I'll likely do these first before anything else.  :)

The INSTALL file alludes to some compilers (c89) being used---which if
that were the case would likely fail.  Try this, for instance:

    CFLAGS="-std=c89" ./configure && make

The result is one of failure for all sorts of reasons.  Likewise, for

    CFLAGS="-std=c99" ./configure && make

There are more failures.  I appreciate I've not been very specific as to
which, but I'm curious which one you'd at least want to try and adhere

More generally, there's a lot of older, err, "cruft" if I can call it
that with a mixture of K&R/ANSI function protoypes, the use of the very
old P() macro, etc., which makes me wonder any form of C standards
compliance has largely been overshadowed.

I'm very happy to audit the files in question and clean a lot of these
things up (even as proof-of-concepts so you can see what the impact
is), but I'd appreciate thoughts on this before I start wading through,
as it's very easy to overshoot yourself and go beyond what's wanted.

My own preference would be for ANSI across the board (no pun intended),
and adherence to c89 so that we can then check to see if things can be
modernised further, assuming we don't break older compilers.


-- Thomas Adam


"Deep in my heart I wish I was wrong.  But deep in my heart I know I am
not." -- Morrissey ("Girl Least Likely To" -- off of Viva Hate.)

Joshua Pettus | 15 Mar 23:08 2015

Fwd: Bunch 'o Patches.

Begin forwarded message:

Subject: Re: [XBoard-devel] Bunch 'o Patches.
From: Joshua Pettus <jshpettus <at>>
Date: March 15, 2015 at 6:08:08 PM EDT
To: Arun Persaud <apersaud <at>>

Thanks Arun!

Well, I think it would be best if H.G. could take a look at it and put in his branch, whenever he finds the time.
I just have a master branch over there.  I based everything off of master on Savannah, not his branch though. I hope it’s not too much of an issue.


On Mar 15, 2015, at 2:46 AM, Arun Persaud <apersaud <at>> wrote:


On 03/11/2015 09:47 PM, Joshua Pettus wrote:
I managed to rename the github account name. (It was old and not really
what I wanted to use for xboard)  the repo is now

Sorry for any confusion.

Anyway, do I send the pull request to H.G. as he is the active dev?  I’d
hate to step on his shoes somewhere.  Particularly with that infoProc move.

If you want HGM to have a look at them, he should pull from your github
repo (adding it as a remote to his git tree) or review it on github. If
you want to commit to savannah, I can pull and commit, but I don't have
time to review commits at the moment. Just let me know which branch I
should commit.


Joshua Pettus | 10 Mar 21:14 2015

Fwd: Bunch 'o Patches.

Begin forwarded message:

From: Joshua Pettus <jshpettus <at>>
Subject: Re: [XBoard-devel] Bunch 'o Patches.
Date: March 10, 2015 at 4:14:16 PM EDT
To: Arun Persaud <apersaud <at>>

Hey, Sorry it took a while.  My whole family contracted some terrible stomach flu.
We’re getting better now.

Anyway I pushed all the patches to this git tree.


On Mar 8, 2015, at 4:59 PM, Joshua Pettus <jshpettus <at>> wrote:

Not a bad idea, I could probably set up a github, I’d feel more comfortable with the indirect route if that’s ok.


On Mar 8, 2015, at 2:06 PM, Arun Persaud <apersaud <at>> wrote:

Hi Joshua

if you want, I can help to set you up with direct git access, that way
you could just commit them yourself or if you don't want to commit to
savannah you could just post your git tree somewhere else and then we
can pull from there.


Joshua Pettus | 8 Mar 15:23 2015

Bunch 'o Patches.

Hi Harm,

I tried to send this to you directly, but, for whatever reason, it looks like the message gets lost in the
void.  It’s part of the reason why there are so many patches. ;)

I have been a little busy and made a bunch of fixes for the OSX build portion I’d like in for 4.8.1

The first is the Man and Info page changes to launch through Apple script.  If you recall I mentioned that I
moved infoProc to gtk/xboard.c so I could use the dataDir stuff there.

Attachment (Man+InfoFix.patch): application/octet-stream, 4059 bytes

Next, to simplify the build process a little bit, and avoid a possible error, I decided to change the way
pango is included in the bundle.  Before I used a special variant that had the pango modules built into the
pango libs.   As I was setting up macports again on the 10.6 VirtualMachine, I forgot that.  Now that I know
more about how it works, it isn’t really necessary to use a special variant here.

Attachment (PangoFix.patch): application/octet-stream, 3331 bytes

Next is some changes to the output OSX master conf file.  Mostly puts it back more in line with the original.   I
shouldn’t have used an ip address for FICS. Also it implements the uxiadapter for UCI2WB

Attachment (conf.patch): application/octet-stream, 2747 bytes

Then with the update to gtk-mac-integration library, he changed the name to gtkmacintegration-gtk2 to
differentiate from gtk-3 I guess…  A pain but here is a fix for compiling.

Attachment (gtk2i_name_update.patch): application/octet-stream, 1587 bytes

Also with the gtk-mac-integration library update fixes osx localization for the App menu. So we don’t
need to include separate string folders in our source code.  So I removed them and have the build script pull
from the system installed directory.  If you could also remove the osxapp/osx-localization folder
itself.  That would be very helpful.  I couldn’t figure out how to do it with diff.

Attachment (gtk2i_locale_update.patch): application/octet-stream, 28 KiB

Finally I decided to use the Mac theme in the GIMP bundle which also uses GPL v3.  It’s better then the one
before in that there is no pixbuffs going on, and is a lot less complicated.  Still looks better then
default, so thats good.  As a result, I had to reimplement the gtk-murrine engine, but that’s no biggie. 
Be sure to put this patch on last.  I must have created it when I had some of the other patches applied.  Else it
will fail... :(

Attachment (gtk_mac_theme.patch): application/octet-stream, 37 KiB

Thanks a lot! and Best Wishes,
Nalin.x.Linux | 7 Mar 16:57 2015

XBoard Accessibility and Enhancement

Dear developers, 
      It's happy to inform that In previous year i fell into another Accessibility related GSOC Project named Alt Approach to input text using braille combinations (IBus-Sharada-Braille).  And it helps lot of visually challenged people near me to input text using braille combination.  BTW in this year i would like to propose XBoard Accessibility and Enhancement again to GNU. i had a discussion with samuel thibault and he said "the xboard project should send a mail to register their software
and I can send one as a mentor" and also he gave the following link

So can you please register the software with GNU GSOC and contact them regarding this ?
Please respond as soon as possible. The registration should happened within few days in order to propose it.

Free Software Free Society
Nalin.x.Linux | 5 Mar 11:44 2015

Fwd: GTK Developer needed - GSOC 2014 regarding

---------- Forwarded message ----------
From: Nalin.x.Linux <nalin.x.linux <at>>
Date: Wed, Mar 4, 2015 at 7:47 PM
Subject: Re: [XBoard-devel] GTK Developer needed - GSOC 2014 regarding
Cc: Arun Persaud <apersaud <at>>, "H.G. Muller" <h.g.muller <at>>

Dear develpers, 
      It's happy to inform that In previous year i fell into another Accessibility related GSOC Project named Alt Approach to input text using braille combinations (IBus-Sharada-Braille).  And it helps lot of visually challenged people near me to input text using braille combination.  BTW in this year i would like to propose XBoard Accessibility and Enhancement again to GNU. i had a discussion with samuel thibault and he said 
"the xboard project should send a mail to register their software
and I can send one as a mentor" and also he gave the following link

So can you please register the software and contact GNU regarding this ? 

Free Software Free Society
Svetlana A. Tkachenko | 27 Feb 12:47 2015

Puzzle mode documentation

I do not see documentation for "Mode → Puzzle". What does that do?


Svetlana A. Tkachenko
Member of the Free Software Foundation

Svetlana Tkachenko | 29 Jan 10:59 2015

2 people mode

Strangely I can find machine-white, machine-black, and 2 machines modes, but not a mode without a machine
involved (2 people at 1 computer move pieces in turn). I checked again in a couple hour but I don't see what I
could've missed...


Svetlana Tkachenko