Dosbox
Moderátor: Moderátoři
Na radce asi 790:
Kód: Vybrat vše
RtlInitializeCriticalSection(&q->cs);
list_init(&q->timers);
q->quit = FALSE;
q->magic = TIMER_QUEUE_MAGIC;
MESSAGE("pokus create_event ntdll threadpool 1\n");
status = NtCreateEvent(&q->event, EVENT_ALL_ACCESS, NULL, SynchronizationEvent, FALSE);
if (status != STATUS_SUCCESS)
{
RtlFreeHeap(GetProcessHeap(), 0, q);
return status;
}Kód: Vybrat vše
if (!Timer)
return STATUS_INVALID_PARAMETER_1;
q = t->q;
if (CompletionEvent == INVALID_HANDLE_VALUE)
{
MESSAGE("pokus create_event ntdll threadpool 2\n");
status = NtCreateEvent(&event, EVENT_ALL_ACCESS, NULL, SynchronizationEvent, FALSE);
if (status == STATUS_SUCCESS)
status = STATUS_PENDING;
}
else if (CompletionEvent)
event = CompletionEvent;
Kód: Vybrat vše
bucket->objcount = 0;
bucket->alertable = alertable;
list_init( &bucket->reserved );
list_init( &bucket->waiting );
MESSAGE("pokus create_event ntdll threadpool 3\n");
status = NtCreateEvent( &bucket->update_event, EVENT_ALL_ACCESS,
NULL, SynchronizationEvent, FALSE );
if (status)
{
RtlFreeHeap( GetProcessHeap(), 0, bucket );
goto out;
}Na radce 221:
Kód: Vybrat vše
TRACE( "(%s %p)\n", debugstr_us(name), ret_handle );
InitializeObjectAttributes( &attr, name, 0, 0, NULL );
MESSAGE("pokus create_event ntoskrnl.exe sync 1\n");
ret = NtCreateEvent( &handle, EVENT_ALL_ACCESS, &attr, SynchronizationEvent, TRUE );
if (ret) return NULL;Kód: Vybrat vše
TRACE( "(%s %p)\n", debugstr_us(name), ret_handle );
InitializeObjectAttributes( &attr, name, 0, 0, NULL );
MESSAGE("pokus create_event ntoskrnl.exe sync 2\n");
ret = NtCreateEvent( &handle, EVENT_ALL_ACCESS, &attr, NotificationEvent, TRUE );
if (ret) return NULL;Kód: Vybrat vše
grep -RI "stderr.*pokus create_event" .Kód: Vybrat vše
attr.Length = sizeof(attr);
attr.RootDirectory = 0;
attr.Attributes = OBJ_INHERIT;
attr.ObjectName = NULL;
attr.SecurityDescriptor = NULL;
attr.SecurityQualityOfService = NULL;
/* ask for manual reset, so that once the debugger is started,
* every thread will know it */
MESSAGE("pokus create_event kernelbase debug");
NtCreateEvent( &event, EVENT_ALL_ACCESS, &attr, NotificationEvent, FALSE );
if (InterlockedCompareExchangePointer( &once, event, 0 ) == 0)
{
/* ok, our event has been set... we're the winning thread */
BOOL ret = start_debugger( epointers, once );