mirror of
https://review.haiku-os.org/buildtools
synced 2024-11-23 07:18:49 +01:00
Fix prototype for atomic_add
bastring declares the prototype for atomic_add, as it can't rely on haiku-specific headers. Have this declaration match the modified prototype from Scheduler branch merge. Matches commit 73ad2473e7874b3702cf5b0fdf4c81b747812ed9 on Haiku side.
This commit is contained in:
parent
6126596774
commit
9bfca2f40f
@ -66,7 +66,7 @@ extern void __length_error (const char *);
|
||||
#endif
|
||||
|
||||
#ifdef __HAIKU__
|
||||
extern "C" __haiku_int32 atomic_add(volatile __haiku_int32* value,
|
||||
extern "C" __haiku_int32 atomic_add(__haiku_int32* value,
|
||||
__haiku_int32 addvalue);
|
||||
#endif /* __HAIKU__ */
|
||||
|
||||
@ -82,7 +82,7 @@ private:
|
||||
charT* data () { return reinterpret_cast<charT *>(this + 1); }
|
||||
charT& operator[] (size_t s) { return data () [s]; }
|
||||
#ifdef __HAIKU__
|
||||
charT* grab () { if (selfish) return clone (); atomic_add((volatile __haiku_int32*) &ref, 1); return data (); }
|
||||
charT* grab () { if (selfish) return clone (); atomic_add((__haiku_int32*) &ref, 1); return data (); }
|
||||
void release() { if (atomic_add((__haiku_int32*) &ref, -1) == 1) delete this; }
|
||||
#else
|
||||
charT* grab () { if (selfish) return clone (); ++ref; return data (); }
|
||||
|
Loading…
Reference in New Issue
Block a user