This corrects an issue encountered when loading world information on the Raspberry Pi. Sometimes, there is a ~ stored in the memory location in front of tmp char array. The for loop will decrement below the starting memory address, making it read the ~ and think it's at the end of the room, causing an error and preventing the MUD from loading.
This change checks the memory address of tmp, ensuring it is > the starting memory address before decrementing it in the for() loop. Then, the if/else checks to ensure the carriage return and newline are properly placed to prevent duplication.
* Make sure all followers are free'd before freeing the character list
Otherwise, the followers structs will point to free'd memory and
the stop_follower call will attempt to dereference a free'd
characters' followers list.
* Make sure %target% works in act triggers
* code cleanup. Remove inline block, make variable names more understandable.
Ref https://www.tbamud.com/forum/4-development/4525-confused-over-piece-of-code-in-parse-room
Otherwise, the followers structs will point to free'd memory and
the stop_follower call will attempt to dereference a free'd
characters' followers list.
* Add build generated files to .gitignore
* Fix error in "last all" output and resolve Wunused-result warnings
- Check return value of several standard library calls that could
return error states.
- Fix issue with "last all" command (it sent tabs for alignment
that were reinterpreted as colors).
* Fix buffer overflow in do_export_zone command
* Increase ID space
DG Scripts uses tiny idspace that results in wacky bugs when the mud is
running too long.
* Overhaul script ids
All references to GET_ID(ch/obj) were removed and replaced by
char_script_id() and obj_script_id(), which don’t assign ids until they
are needed. The ch->id and obj->id variable names were changed to
script_id to prevent accidental errors for future programmers. This
change greatly increases how long the mud can run before it runs out of
ID space.
* Fix extraction count
This prevents an error log where it has over-counted the extractions
pending. It now behaves correctly when the same mob is %purge%’d or
extract_char()’d twice.
* Added %log%, and made %send%, %echo%, etc. not force capitalization.
* Fixed Previous Commit
* Really fixed this time.
* Fixed look 2.mail
Also reverted CMMAND_TERMS, was increased in previous commit when it didn't need to be due to the removed of marena.
* Fixed add_to_lookup_table
Fixed as per Welcor https://www.tbamud.com/forum/2-general/4307-crash-bug-need-assistance-with-gdb?start=20#7390
* Fixed two crash bugs
Fixed tw crash bugs Welcor found here https://www.tbamud.com/forum/4-development/4300-simple-list-forced-to-reset-itself
* wizhelp changes
Cleared buf in columns_list that was getting garbage data in it. Removed wizhelp subcommand from do_commands, and removed buf and sprintf line that were never sent to anyone and replaced it with a send_to_char. Removed arg capability from do_commands as it's no longer useful without the wizhelp subcommand. Replaced wizhelp subcommand with separate do_wizhelp command that sorts commands by their level and shows all imms all imm commands regardless of their level.
* Fix
Fixed previous commit
* Trigedit Mostly
Changed attributes to persist across logout when changed in trigedit. Made strength now loer for GRGOD and above when wearing equipment. Added npcflag field to trigedit. Fixed %actor.vnum()%
* Log Files
Fixed Farbled Data in Logfiles. Fix from Prool on forums.
* Mudlog, Trigedit, New Pref Toggle
Skimmed every call of mudlog for missing GET_INVIS_LEV and other obvious inconsistencies. Added affect_total() cals to dg_variables so stats adjust properly. Added zoneresets toggle to prefedit because syslog complete is super spammy as a result of zone resets so tey're now separate from other syslog options.
- GET_OBJ_PERM has been removed in favor of GET_OBJ_AFFECT.
Implemented idea #55: Mail stamp cost.
- Postmaster no longer mentions stamp price for immortals.
- Prevented compiler warnings when using
’-Wtautological-pointer-compare’ on development system (Darwin)
- Prevented possible string truncation when adding a newline to an OLC
setting string.