Skip to content
Snippets Groups Projects
Select Git revision
  • fe7d19cc57ab40ad130f9941efcfef72c3e82daa
  • next default protected
  • fix-opengl-black-background-color
  • reconsider-usable-by-lua
  • fix-soundplay-fix
  • port-namechange-srb2classic
  • restore-timeout-fix-from-hanicef
  • mobj-gravity-field
  • fix-player-ping-being-writeable
  • SRB2_release_2.2.13
  • SRB2_release_2.2.12
  • SRB2_release_2.2.11
  • SRB2_release_2.2.10
  • SRB2_release_2.2.9
  • SRB2_release_2.2.8
  • SRB2_release_2.2.7
  • SRB2_release_2.2.6
  • SRB2_release_2.2.5
  • SRB2_release_2.2.4
  • SRB2_release_2.2.3
  • SRB2_release_2.2.2
  • SRB2_release_2.2.1
  • SRB2_release_2.2.0
  • SRB2_release_2.1.25
  • SRB2_release_2.1.24
  • SRB2_release_2.1.23
  • SRB2_release_2.1.22
  • SRB2_release_2.1.21
  • SRB2_release_2.1.20
29 results

filesrch.h

Blame
  • Forked from STJr / SRB2
    Source project has a limited visibility.
    fastcmp.h 790 B
    #ifndef __FASTCMP_H__
    #define __FASTCMP_H__
    
    // returns false if s != c
    // returns true if s == c
    FUNCINLINE static ATTRINLINE boolean fasticmp(const char *s, const char *c)
    {
    	for (; *s && toupper(*s) == toupper(*c); s++, c++) ;
    	return (*s == *c); // make sure both strings ended
    }
    
    // case-sensitive of the above
    FUNCINLINE static ATTRINLINE boolean fastcmp(const char *s, const char *c)
    {
    	for (; *s && *s == *c; s++, c++) ;
    	return (*s == *c); // make sure both strings ended
    }
    
    // length-limited of the above
    // only true if both strings are at least l characters long AND match, case-sensitively!
    FUNCINLINE static ATTRINLINE boolean fastncmp(const char *s, const char *c, UINT16 l)
    {
    	for (; *s && *s == *c && --l; s++, c++) ;
    	return !l; // make sure you reached the end
    }
    
    #endif