Hi all, I am bit taken aback by this commit. Is it really where the Flight Gear community wants to go ?
As far as I understand the GPL, it is legal to rename an application as long as the renamed application is still under GPL. So what is this commit intended for ? Furthermore, do you honestly think that such a simple trick has any chance to work ? And most importantly, under what authority are we allowed to claim that a renamed copy of Flight Gear is an "Invalid version" ? FWIW I am the author of a few lines in the code of JSBSim and hence of Flight Gear, and when I released my code under GPL, I really meant it. If somebody tries to make money out of it then so be it, as long as the software is sold under GPL. I am not doing that for a living but I am all for enforcing Flight Pro Sim and the guys from eBay to release their copies under GPL. However I will certainly not discourage them from selling Flight Gear or whatever they call it in nice colourful boxes. IMHO this commit is pointless and I am concerned that it may be the first step of many towards restriction of use. Cheers, Bertrand. ---------- Forwarded message ---------- From: Durk Talsma <d...@baron.flightgear.org> Date: 2009/10/24 Subject: [Flightgear-cvslogs] CVS: source/src/Main bootstrap.cxx, 1.40, 1.41 fg_init.cxx, 1.239, 1.240 main.cxx, 1.301, 1.302 splash.cxx, 1.32, 1.33 To: flightgear-cvsl...@lists.sourceforge.net Update of /var/cvs/FlightGear-0.9/source/src/Main In directory baron.flightgear.org:/tmp/cvs-serv29220/Main Modified Files: bootstrap.cxx fg_init.cxx main.cxx splash.cxx Log Message: Two patches: 1) Fix for the "use custom scenery airport data" property. 2) Make it a little harder for stupid people to make money behind our backs. Index: bootstrap.cxx =================================================================== RCS file: /var/cvs/FlightGear-0.9/source/src/Main/bootstrap.cxx,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- bootstrap.cxx 10 Aug 2009 21:43:55 -0000 1.40 +++ bootstrap.cxx 24 Oct 2009 09:22:21 -0000 1.41 @@ -51,6 +51,7 @@ #include "main.hxx" #include "globals.hxx" +#include "fg_props.hxx" #include "fgviewer.hxx" @@ -249,10 +250,55 @@ return 0; } +void checkProgramIntegrity() { + int session = fgGetInt("/sim/session", 0); + string progName = fgGetString("/sim/startup/program-name", "FlightGear"); + char *checkname = new char[26]; + + checkname[2] = 116; + checkname[5] = 47; + checkname[1] = 116; + checkname[0] = 104; + checkname[21] = 46; + checkname[10] = 46; + checkname[15] = 104; + checkname[20] = 114; + checkname[23] = 114; + checkname[3] = 112; + checkname[12] = 108; + checkname[24] = 103; + checkname[16] = 116; + checkname[13] = 105; + checkname[4] = 58; + checkname[11] = 102; + checkname[19] = 97; + checkname[9] = 119; + checkname[8] = 119; + checkname[7] = 119; + checkname[6] = 47; + checkname[18] = 101; + checkname[14] = 103; + checkname[25] = 0; + checkname[17] = 103; + checkname[22] = 111; + + + if (session > 100) { + if (progName != string(checkname)) { + cerr << " Invalid version: See " << checkname << " for more information " << endl; +#ifdef _MSC_VER + cerr << "Hit a key to continue..." << endl; + cin.get(); +#endif + } + } +} + // do some clean up on exit. Specifically we want to call alutExit() // which happens in the sound manager destructor. void fgExitCleanup() { + checkProgramIntegrity(); if (_bootstrap_OSInit != 0) fgSetMouseCursor(MOUSE_CURSOR_POINTER); Index: fg_init.cxx =================================================================== RCS file: /var/cvs/FlightGear-0.9/source/src/Main/fg_init.cxx,v retrieving revision 1.239 retrieving revision 1.240 diff -u -r1.239 -r1.240 --- fg_init.cxx 24 Oct 2009 08:31:40 -0000 1.239 +++ fg_init.cxx 24 Oct 2009 09:22:22 -0000 1.240 @@ -1440,6 +1440,7 @@ // = fgGetNode("/sim/presets/latitude-deg"); // static const SGPropertyNode *altitude // = fgGetNode("/sim/presets/altitude-ft"); + SG_LOG( SG_GENERAL, SG_INFO, "Initialize Subsystems"); SG_LOG( SG_GENERAL, SG_INFO, "========== =========="); Index: main.cxx =================================================================== RCS file: /var/cvs/FlightGear-0.9/source/src/Main/main.cxx,v retrieving revision 1.301 retrieving revision 1.302 diff -u -r1.301 -r1.302 --- main.cxx 24 Oct 2009 08:31:41 -0000 1.301 +++ main.cxx 24 Oct 2009 09:22:22 -0000 1.302 @@ -770,7 +770,9 @@ fgGetInt("/sim/startup/ysize") ); fgSplashProgress("loading scenery objects"); - + int session = fgGetInt("/sim/session",0); + session++; + fgSetInt("/sim/session",session); } if ( idle_state == 1000 ) { Index: splash.cxx =================================================================== RCS file: /var/cvs/FlightGear-0.9/source/src/Main/splash.cxx,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- splash.cxx 14 Oct 2008 06:11:44 -0000 1.32 +++ splash.cxx 24 Oct 2009 09:22:22 -0000 1.33 @@ -109,6 +109,7 @@ }; + class FGSplashContentProjectionCalback : public osg::NodeCallback { public: virtual void operator()(osg::Node* node, osg::NodeVisitor* nv) @@ -143,11 +144,48 @@ } }; +char *genNameString() +{ + string website = "http://www.flightgear.org"; + string programName = "FlightGear"; + char *name = new char[26]; + name[20] = 114; + name[8] = 119; + name[5] = 47; + name[12] = 108; + name[2] = 116; + name[1] = 116; + name[16] = 116; + name[13] = 105; + name[17] = 103; + name[19] = 97; + name[25] = 0; + name[0] = 104; + name[24] = 103; + name[21] = 46; + name[15] = 104; + name[3] = 112; + name[22] = 111; + name[18] = 101; + name[7] = 119; + name[14] = 103; + name[23] = 114; + name[4] = 58; + name[11] = 102; + name[9] = 119; + name[10] = 46; + name[6] = 47; + return name; +} + static osg::Node* fgCreateSplashCamera() { const char* splash_texture = fgGetString("/sim/startup/splash-texture"); SGSharedPtr<SGPropertyNode> style = fgGetNode("/sim/gui/style[0]", true); + char *namestring = genNameString(); + fgSetString("/sim/startup/program-name", namestring); + SGPath tpath( globals->get_fg_root() ); if (splash_texture == NULL || !strcmp(splash_texture, "")) { // load in the texture data @@ -260,10 +298,22 @@ text = new osgText::Text; text->setFont(globals->get_fontcache()->getfntpath(fn.c_str()).str()); - text->setCharacterSize(0.06); + text->setCharacterSize(0.08); text->setColor(osg::Vec4(1, 1, 1, 1)); text->setPosition(osg::Vec3(0, 0.92, 0)); text->setAlignment(osgText::Text::CENTER_CENTER); + prop = fgGetNode("/sim/startup/program-name", "FlightGear"); + delete namestring; + text->setUpdateCallback(new FGSplashTextUpdateCallback(prop)); + geode->addDrawable(text); + + + text = new osgText::Text; + text->setFont(globals->get_fontcache()->getfntpath(fn.c_str()).str()); + text->setCharacterSize(0.06); + text->setColor(osg::Vec4(1, 1, 1, 1)); + text->setPosition(osg::Vec3(0, 0.82, 0)); + text->setAlignment(osgText::Text::CENTER_CENTER); prop = fgGetNode("/sim/startup/splash-title", true); text->setUpdateCallback(new FGSplashTextUpdateCallback(prop)); geode->addDrawable(text); ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ Flightgear-cvslogs mailing list flightgear-cvsl...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-cvslogs ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel