mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-08-15 08:53:07 +09:00
parent
470a6e4401
commit
13fcc4a046
949 changed files with 95662 additions and 444 deletions
|
|
@ -6,6 +6,8 @@
|
|||
#if defined(XP_WIN)
|
||||
#include <windows.h>
|
||||
#include <objbase.h>
|
||||
#elif defined(XP_MACOSX)
|
||||
#include <CoreFoundation/CoreFoundation.h>
|
||||
#else
|
||||
#include <stdlib.h>
|
||||
#include "prrng.h"
|
||||
|
|
@ -32,7 +34,7 @@ nsUUIDGenerator::Init()
|
|||
// We're a service, so we're guaranteed that Init() is not going
|
||||
// to be reentered while we're inside Init().
|
||||
|
||||
#if !defined(XP_WIN) && !defined(HAVE_ARC4RANDOM)
|
||||
#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(HAVE_ARC4RANDOM)
|
||||
/* initialize random number generator using NSPR random noise */
|
||||
unsigned int seed;
|
||||
|
||||
|
|
@ -69,7 +71,7 @@ nsUUIDGenerator::Init()
|
|||
}
|
||||
#endif
|
||||
|
||||
#endif /* non XP_WIN and non ARC4RANDOM */
|
||||
#endif /* non XP_WIN and non XP_MACOSX and non ARC4RANDOM */
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
@ -104,7 +106,17 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsID* aId)
|
|||
if (FAILED(hr)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
#else /* not windows; generate randomness using random(). */
|
||||
#elif defined(XP_MACOSX)
|
||||
CFUUIDRef uuid = CFUUIDCreate(kCFAllocatorDefault);
|
||||
if (!uuid) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
CFUUIDBytes bytes = CFUUIDGetUUIDBytes(uuid);
|
||||
memcpy(aId, &bytes, sizeof(nsID));
|
||||
|
||||
CFRelease(uuid);
|
||||
#else /* not windows or OS X; generate randomness using random(). */
|
||||
/* XXX we should be saving the return of setstate here and switching
|
||||
* back to it; instead, we use the value returned when we called
|
||||
* initstate, since older glibc's have broken setstate() return values
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue