Changeset 102211 in vbox for trunk/src/libs
- Timestamp:
- Nov 21, 2023 2:19:17 PM (16 months ago)
- svn:sync-xref-src-repo-rev:
- 160336
- Location:
- trunk/src/libs/xpcom18a4
- Files:
-
- 1 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/libs/xpcom18a4/Makefile.kmk
r102209 r102211 169 169 nsprpub/pr/include/prclist.h \ 170 170 nsprpub/pr/include/prcvar.h \ 171 nsprpub/pr/include/prinit.h \172 171 nsprpub/pr/include/prinrval.h \ 173 172 nsprpub/pr/include/prlock.h \ -
trunk/src/libs/xpcom18a4/nsprpub/pr/include/nspr.h
r102209 r102211 42 42 #include "prclist.h" 43 43 #include "prcvar.h" 44 #include "prinit.h"45 44 #include "prinrval.h" 46 45 #include "prlock.h" -
trunk/src/libs/xpcom18a4/nsprpub/pr/src/misc/prinit.c
r102207 r102211 53 53 PRBool _pr_initialized = PR_FALSE; 54 54 55 56 PR_IMPLEMENT(PRBool) PR_Initialized(void)57 {58 return _pr_initialized;59 }60 61 55 PRInt32 _native_threads_only = 0; 62 56 … … 86 80 } 87 81 88 PR_IMPLEMENT(void) PR_Init(89 PRThreadType type, PRThreadPriority priority, PRUintn maxPTDs)90 {91 _PR_ImplicitInitialization();92 }93 94 PR_IMPLEMENT(PRIntn) PR_Initialize(95 PRPrimordialFn prmain, PRIntn argc, char **argv, PRUintn maxPTDs)96 {97 PRIntn rv;98 _PR_ImplicitInitialization();99 rv = prmain(argc, argv);100 PR_Cleanup();101 return rv;102 } /* PR_Initialize */103 104 82 /* prinit.c */ 105 83 -
trunk/src/libs/xpcom18a4/nsprpub/pr/src/pthreads/ptthread.c
r102209 r102211 233 233 } /* _PR_InitThreads */ 234 234 235 PR_IMPLEMENT(PRStatus) PR_Cleanup(void)236 {237 PRThread *me = PR_GetCurrentThread();238 Log(("PR_Cleanup: shutting down NSPR\n"));239 Assert(me->state & PT_THREAD_PRIMORD);240 if (me->state & PT_THREAD_PRIMORD)241 {242 PR_Lock(pt_book.ml);243 while (pt_book.user > pt_book.this_many)244 PR_WaitCondVar(pt_book.cv, PR_INTERVAL_NO_TIMEOUT);245 PR_Unlock(pt_book.ml);246 247 /*248 * I am not sure if it's safe to delete the cv and lock here,249 * since there may still be "system" threads around. If this250 * call isn't immediately prior to exiting, then there's a251 * problem.252 */253 if (0 == pt_book.system)254 {255 PR_DestroyCondVar(pt_book.cv); pt_book.cv = NULL;256 PR_DestroyLock(pt_book.ml); pt_book.ml = NULL;257 }258 _pt_thread_death(me);259 260 _pr_initialized = PR_FALSE;261 return PR_SUCCESS;262 }263 return PR_FAILURE;264 } /* PR_Cleanup */265 266 235 /* ptthread.c */
Note:
See TracChangeset
for help on using the changeset viewer.