Login
User Name:

Password:



Register

Forgot your password?
do_advance
Jun 27, 2026 10:32 am
By Remcon
Time spamming LOP1.6
Jun 17, 2026 4:03 pm
By Remcon
A Bash Startup Script
Feb 7, 2026 3:49 pm
By eldhamud
Force Skills
Jan 1, 2026 3:58 pm
By Elwood
Overland with Bitmaps
Jul 4, 2025 11:57 pm
By Samson
SillyMUD 1.2a
Author: J. Brothers, J. Sievert, et al
Submitted by: Samson
SillyMUD 1.1b
Author: J. Brothers, J. Sievert, et al
Submitted by: Samson
SWFotEFUSS 1.5.3
Author: Various
Submitted by: Samson
SWRFUSS 1.4.3
Author: Various
Submitted by: Samson
SmaugFUSS 1.9.8
Author: Various
Submitted by: Samson
Users Online
Anthropic, Amazonbot

Members: 0
Guests: 30
Stats
Files
Topics
Posts
Members
Newest Member
512
3,813
19,727
593
TrinidadTr

» SmaugMuds » Bugfix Lists » SWR FUSS Bugfix List » [Bug] Setplanet has no checks...
Forum Rules | Mark all | Recent Posts

[Bug] Setplanet has no checks for name argument
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 Jan 2, 2009 1:14 pm   
Go to the top of the page
Go to the bottom of the page

InfiniteAxis
Off the Edge of the Map
GroupAdministrators
Posts1,199
JoinedMar 21, 2006

 
Bug: Setplanet has no checks for name argument
Danger: High - Planet files could be lost or corrupted.
Found by: Keberus
Fixed by: Keberus

---

planets.c, do_setplanet

Locate:
   if( !strcmp( arg2, "name" ) )
   {
      STRFREE( planet->name );
      planet->name = STRALLOC( argument );
      send_to_char( "Done.\r\n", ch );
      save_planet( planet );
      return;
   }


Change it to:
   if( !strcmp( arg2, "name" ) )
   {
      PLANET_DATA *tplanet;
      if( !argument || argument[0] == '\0' )
      {
         send_to_char( "You must choose a name.\r\n", ch );
         return;
      }
      if( ( tplanet = get_planet( argument ) ) != NULL )
      {
         send_to_char( "A planet with that name already Exists!\r\n", ch );
         return;
      }

      STRFREE( planet->name );
      planet->name = STRALLOC( argument );
      send_to_char( "Done.\r\n", ch );
      save_planet( planet );
      return;
   }


This will make sure that the planet name exists and make sure that you don't set it to the same name as a different planet.

Pages:<< prev 1 next >>