Commit 286d73c3 authored by Vladislav Vaintroub's avatar Vladislav Vaintroub
Browse files

merge

parents d346054c ea0efe45
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -4368,6 +4368,9 @@ we force server id to 2, but this MySQL server will not act as a slave.");
                                                       : mysqld_unix_port),
                         mysqld_port,
                         MYSQL_COMPILATION_COMMENT);
#if defined(_WIN32) && !defined(EMBEDDED_LIBRARY)
  Service.SetRunning();
#endif


  /* Signal threads waiting for server to be started */
+12 −7
Original line number Diff line number Diff line
@@ -255,10 +255,6 @@ void NTService::ServiceMain(DWORD argc, LPTSTR *argv)
  if (!pService->StartService())
    goto error;

  // Check that the service is now running.
  if (!pService->SetStatus(SERVICE_RUNNING,NO_ERROR, 0, 0, 0))
    goto error;

  // wait for exit event
  WaitForSingleObject (pService->hExitEvent, INFINITE);

@@ -274,9 +270,18 @@ void NTService::ServiceMain(DWORD argc, LPTSTR *argv)
  return;
}

/**
  starts the appliaction thread.
*/


void NTService::SetRunning()
{
  if (pService)
    pService->SetStatus(SERVICE_RUNNING,NO_ERROR, 0, 0, 0);
}


/* ------------------------------------------------------------------------
   StartService() - starts the application thread
 -------------------------------------------------------------------------- */

BOOL NTService::StartService()
{
+13 −1
Original line number Diff line number Diff line
@@ -60,7 +60,19 @@ class NTService
    BOOL IsService(LPCSTR ServiceName);
    BOOL got_service_option(char **argv, char *service_option);
    BOOL is_super_user();
    void Stop(void); //to be called from app. to stop service

    /* 
      SetRunning() is to be called by the application 
      when initialization completes and it can accept
      stop request
    */
    void SetRunning(void);

    /*
      Stop() is to be called by the application to stop 
      the service
    */
    void Stop(void); 

  protected:
    LPSTR		   ServiceName;