… | |
… | |
57 | shstr::length (v) = len; |
57 | shstr::length (v) = len; |
58 | shstr::refcnt (v) = 1; |
58 | shstr::refcnt (v) = 1; |
59 | |
59 | |
60 | memcpy ((char *)v, s, len + 1); |
60 | memcpy ((char *)v, s, len + 1); |
61 | |
61 | |
62 | return s; |
62 | return v; |
63 | } |
63 | } |
64 | |
64 | |
65 | const char *shstr::null = makevec ("<nil>"); |
65 | const char *shstr::null = makevec ("<nil>"); |
|
|
66 | |
|
|
67 | // what weird misoptimisation is this again? |
|
|
68 | const shstr undead_name ("undead"); |
66 | |
69 | |
67 | const char * |
70 | const char * |
68 | shstr::find (const char *s) |
71 | shstr::find (const char *s) |
69 | { |
72 | { |
70 | if (!s) |
73 | if (!s) |