Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
Couple bugs
Dec 12, 2017, 5:42 pm
By Remcon
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
Bug in will_fall( )
Oct 23, 2017, 1:35 am
By GatewaySysop
Bug in do_zap( ), do_brandish( )
Oct 18, 2017, 1:52 pm
By GatewaySysop
Bug in get_exp_worth( )
Oct 10, 2017, 1:26 am
By GatewaySysop
LOP 1.45
Author: Remcon
Submitted by: Remcon
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Memwatch
Author: Johan Lindh
Submitted by: Vladaar
Users Online
CommonCrawl, Google, Sogou, Yandex

Members: 0
Guests: 31
Stats
Files
Topics
Posts
Members
Newest Member
477
3,705
19,232
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » Bugfix Lists » SmaugFUSS Bugfix List » [Bug] The QUICKMATCH macro is...
Forum Rules | Mark all | Recent Posts

[Bug] The QUICKMATCH macro is no longer desired and is being removed
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 May 7, 2005, 12:47 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Bug: The QUICKMATCH macro is no longer desired and is being removed.
Danger: None. Preventative removal for future compiler issues.
Found by: Samson
Fixed by: Samson

---

handler.c, group_object

Locate:
       && QUICKMATCH( obj1->name, obj2->name )
       && QUICKMATCH( obj1->short_descr, obj2->short_descr )
       && QUICKMATCH( obj1->description, obj2->description )
       && QUICKMATCH( obj1->action_desc, obj2->action_desc )


Replace with:
       && !str_cmp( obj1->name, obj2->name )
       && !str_cmp( obj1->short_descr, obj2->short_descr )
       && !str_cmp( obj1->description, obj2->description )
       && !str_cmp( obj1->action_desc, obj2->action_desc )


mud_prog.c, mprog_do_ifcheck

Locate:
         for( ch = first_char; ch; ch = ch->next )
            if( !IS_NPC( chkchar ) && !IS_NPC( ch )
                && ch->desc && chkchar->desc && QUICKMATCH( ch->desc->host, chkchar->desc->host ) )


Replace with:
         for( ch = first_char; ch; ch = ch->next )
            if( !IS_NPC( chkchar ) && !IS_NPC( ch )
                && ch->desc && chkchar->desc && !str_cmp( ch->desc->host, chkchar->desc->host ) )


mud.h

Find and remove:

#define QUICKMATCH(p1, p2)	(int) (p1) == (int) (p2)


Find and remove:

#define QUICKMATCH(p1, p2)	strcmp((p1), (p2)) == 0


Changes in the GCC4 compiler have made the reliability of the QUICKMATCH macro questionable in the future so preventative measures are being taken now to remove it before it becomes a problem. The str_cmp() function performs the same checks on string data and probably should have been the preferred method all along.
       
Pages:<< prev 1 next >>