From 362479767008e9b2ff23f44a0698b328433891a0 Mon Sep 17 00:00:00 2001
From: Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>
Date: Sat, 26 Sep 2026 15:07:42 -0300
Subject: Replace NULL pointer constants with nullptr
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Sebastião Guerra <sebastiao.luiz.guerra@gmail.com>
---
 libvncserver/main.cpp | 112 +++++++++++++++++++++++++-------------------------
 1 file changed, 56 insertions(+), 56 deletions(-)

diff --git a/libvncserver/main.cpp b/libvncserver/main.cpp
index 549e77f..0164391 100644
--- a/libvncserver/main.cpp
+++ b/libvncserver/main.cpp
@@ -41,11 +41,11 @@ extern "C" {
 
 #include "main.h"
 
-ControlPipeHandlerObject* mControlPipeHandler = NULL;
-TQEventLoopThread* mControlPipeHandlerThread = NULL;
+ControlPipeHandlerObject* mControlPipeHandler = nullptr;
+TQEventLoopThread* mControlPipeHandlerThread = nullptr;
 
-OnHoldClientHandlerObject* mOnHoldClientHandler = NULL;
-TQEventLoopThread* mOnHoldClientHandlerThread = NULL;
+OnHoldClientHandlerObject* mOnHoldClientHandler = nullptr;
+TQEventLoopThread* mOnHoldClientHandlerThread = nullptr;
 
 extern "C" {
 	/* from scale.c */
@@ -74,7 +74,7 @@ char rfbEndianTest = (1==1);
  * Protocol extensions
  */
 
-static rfbProtocolExtension* rfbExtensionHead = NULL;
+static rfbProtocolExtension* rfbExtensionHead = nullptr;
 
 /*
  * This method registers a list of new extensions.  
@@ -85,9 +85,9 @@ static rfbProtocolExtension* rfbExtensionHead = NULL;
 void
 rfbRegisterProtocolExtension(rfbProtocolExtension* extension)
 {
-	rfbProtocolExtension *head = rfbExtensionHead, *next = NULL;
+	rfbProtocolExtension *head = rfbExtensionHead, *next = nullptr;
 
-	if(extension == NULL)
+	if(extension == nullptr)
 		return;
 
 	next = extension->next;
@@ -99,7 +99,7 @@ rfbRegisterProtocolExtension(rfbProtocolExtension* extension)
 
 	LOCK(extMutex);
 
-	while(head != NULL) {
+	while(head != nullptr) {
 		if(head == extension) {
 			UNLOCK(extMutex);
 			rfbRegisterProtocolExtension(next);
@@ -125,9 +125,9 @@ void
 rfbUnregisterProtocolExtension(rfbProtocolExtension* extension)
 {
 
-	rfbProtocolExtension *cur = NULL, *pre = NULL;
+	rfbProtocolExtension *cur = nullptr, *pre = nullptr;
 
-	if(extension == NULL)
+	if(extension == nullptr)
 		return;
 
 	if (! extMutex_initialized) {
@@ -198,13 +198,13 @@ rfbBool rfbEnableExtension(rfbClientPtr cl, rfbProtocolExtension* extension,
 rfbBool rfbDisableExtension(rfbClientPtr cl, rfbProtocolExtension* extension)
 {
 	rfbExtensionData* extData;
-	rfbExtensionData* prevData = NULL;
+	rfbExtensionData* prevData = nullptr;
 
 	for(extData = cl->extensions; extData; extData = extData->next) {
 		if(extData->extension == extension) {
 			if(extData->data)
 				free(extData->data);
-			if(prevData == NULL)
+			if(prevData == nullptr)
 				cl->extensions = extData->next;
 			else
 				prevData->next = extData->next;
@@ -223,10 +223,10 @@ void* rfbGetExtensionClientData(rfbClientPtr cl, rfbProtocolExtension* extension
     while(data && data->extension != extension)
 	data = data->next;
 
-    if(data == NULL) {
+    if(data == nullptr) {
 	rfbLog("Extension is not enabled !\n");
 	/* rfbCloseClient(cl); */
-	return NULL;
+	return nullptr;
     }
 
     return data->data;
@@ -279,10 +279,10 @@ rfbLogProc rfbErr=rfbDefaultLog;
 void rfbLogPerror(const char *str)
 {
 #ifdef WIN32
-    wchar_t *s = NULL;
+    wchar_t *s = nullptr;
     FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, 
-                   NULL, errno, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
-                   (LPWSTR)&s, 0, NULL);
+                   nullptr, errno, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
+                   (LPWSTR)&s, 0, nullptr);
     rfbErr("%s: %S\n", str, s);
     LocalFree(s);
 #else
@@ -477,7 +477,7 @@ clientOutput(ClientOutputHandlerObject::Data d)
         while (!haveUpdate) {
 		if (cl->sock == -1) {
 			/* Client has disconnected. */
-			return NULL;
+			return nullptr;
 		}
 		if (cl->state != _rfbClientRec::RFB_NORMAL || cl->onHold) {
 			/* just sleep until things get normal */
@@ -528,7 +528,7 @@ clientOutput(ClientOutputHandlerObject::Data d)
     }
 
     /* Not reached. */
-    return NULL;
+    return nullptr;
 }
 
 static void *
@@ -611,13 +611,13 @@ clientInput(OnHoldClientHandlerObject::Data d)
     clientOutputHandler->requestExit();
     clientOutputHandlerThread->wait();
     delete clientOutputHandlerThread;
-    clientOutputHandlerThread = NULL;
+    clientOutputHandlerThread = nullptr;
     delete clientOutputHandler;
-    clientOutputHandler = NULL;
+    clientOutputHandler = nullptr;
 
     rfbClientConnectionGone(cl);
 
-    return NULL;
+    return nullptr;
 }
 
 static void*
@@ -626,7 +626,7 @@ listenerRun(ControlPipeHandlerObject::Data d)
     rfbScreenInfoPtr screen=d.rfbData;
     int client_fd;
     struct sockaddr_storage peer;
-    rfbClientPtr cl = NULL;
+    rfbClientPtr cl = nullptr;
     socklen_t len;
     fd_set listen_fds;  /* temp file descriptor list for select() */
 
@@ -636,7 +636,7 @@ listenerRun(ControlPipeHandlerObject::Data d)
            rfbStartOnHoldClient(cl);
        else if (screen->inetdDisconnectHook && !cl)
            screen->inetdDisconnectHook();
-       return NULL;
+       return nullptr;
     }
 
     /* TODO: this thread won't die by restarting the server */
@@ -649,9 +649,9 @@ listenerRun(ControlPipeHandlerObject::Data d)
 	if(screen->listen6Sock >= 0) 
 	  FD_SET(screen->listen6Sock, &listen_fds);
 
-        if (select(screen->maxFd+1, &listen_fds, NULL, NULL, NULL) == -1) {
+        if (select(screen->maxFd+1, &listen_fds, nullptr, nullptr, nullptr) == -1) {
             rfbLogPerror("listenerRun: error in select");
-            return NULL;
+            return nullptr;
         }
 	
 	/* there is something on the listening sockets, handle new connections */
@@ -666,7 +666,7 @@ listenerRun(ControlPipeHandlerObject::Data d)
 	if (cl && !cl->onHold )
 	  rfbStartOnHoldClient(cl);
     }
-    return(NULL);
+    return(nullptr);
 }
 
 void 
@@ -694,7 +694,7 @@ rfbStartOnHoldClient(rfbClientPtr cl)
         }
         fcntl(cl->pipe_notify_client_thread[0], F_SETFL, O_NONBLOCK);
 
-        pthread_create(&cl->client_thread, NULL, clientInput, (void *)cl);
+        pthread_create(&cl->client_thread, nullptr, clientInput, (void *)cl);
     }
 #endif
 }
@@ -732,7 +732,7 @@ rfbDefaultPtrAddEvent(int buttonMask, int x, int y, rfbClientPtr cl)
 
     /* But inform all remaining clients about this cursor movement. */
     iterator = rfbGetClientIterator(s);
-    while ((other_client = rfbClientIteratorNext(iterator)) != NULL) {
+    while ((other_client = rfbClientIteratorNext(iterator)) != nullptr) {
       if (other_client != cl && other_client->enableCursorPosUpdates) {
 	other_client->cursorWasMoved = TRUE;
       }
@@ -756,7 +756,7 @@ static rfbCursor myCursor =
    8, 7, 3, 3,
    0, 0, 0,
    0xffff, 0xffff, 0xffff,
-   NULL
+   nullptr
 };
 #else
 static rfbCursor myCursor = 
@@ -770,7 +770,7 @@ static rfbCursor myCursor =
    width: 8, height: 7, xhot: 3, yhot: 3,
    foreRed: 0, foreGreen: 0, foreBlue: 0,
    backRed: 0xffff, backGreen: 0xffff, backBlue: 0xffff,
-   richSource: NULL
+   richSource: nullptr
 };
 #endif
 
@@ -856,7 +856,7 @@ static void rfbInitServerFormat(rfbScreenInfoPtr screen, int bitsPerSample)
    format->trueColour = TRUE;
    screen->colourMap.count = 0;
    screen->colourMap.is16 = 0;
-   screen->colourMap.data.bytes = NULL;
+   screen->colourMap.data.bytes = nullptr;
 
    if (format->bitsPerPixel == 8) {
      format->redMax = 7;
@@ -903,8 +903,8 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
      rfbErr("WARNING: Width (%d) is not a multiple of 4. VncViewer has problems with that.\n",width);
 
    screen->autoPort=FALSE;
-   screen->clientHead=NULL;
-   screen->pointerClient=NULL;
+   screen->clientHead=nullptr;
+   screen->pointerClient=nullptr;
    screen->port=5900;
    screen->ipv6port=5900;
    screen->socketState=RFB_SOCKET_INIT;
@@ -915,7 +915,7 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
    screen->udpSock=-1;
    screen->udpSockConnected=FALSE;
    screen->udpPort=0;
-   screen->udpClient=NULL;
+   screen->udpClient=nullptr;
 
    screen->maxFd=0;
    screen->listenSock=-1;
@@ -925,7 +925,7 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
    screen->httpEnableProxyConnect=FALSE;
    screen->httpPort=0;
    screen->http6Port=0;
-   screen->httpDir=NULL;
+   screen->httpDir=nullptr;
    screen->httpListenSock=-1;
    screen->httpListen6Sock=-1;
    screen->httpSock=-1;
@@ -934,7 +934,7 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
    screen->alwaysShared = FALSE;
    screen->neverShared = FALSE;
    screen->dontDisconnect = FALSE;
-   screen->authPasswdData = NULL;
+   screen->authPasswdData = nullptr;
    screen->authPasswdFirstViewOnly = 1;
    
    screen->width = width;
@@ -962,7 +962,7 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
 
    if(!rfbProcessArguments(screen,argc,argv)) {
      free(screen);
-     return NULL;
+     return nullptr;
    }
 
 #ifdef WIN32
@@ -983,7 +983,7 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
    /* cursor */
 
    screen->cursorX=screen->cursorY=screen->underCursorBufferLen=0;
-   screen->underCursorBuffer=NULL;
+   screen->underCursorBuffer=nullptr;
    screen->dontConvertRichCursorToXCursor = FALSE;
    screen->cursor = &myCursor;
    INIT_MUTEX(screen->cursorMutex);
@@ -999,11 +999,11 @@ rfbScreenInfoPtr rfbGetScreen(int* argc,char** argv,
    screen->getCursorPtr = rfbDefaultGetCursorPtr;
    screen->setTranslateFunction = rfbSetTranslateFunction;
    screen->newClientHook = rfbDefaultNewClientHook;
-   screen->displayHook = NULL;
-   screen->inetdDisconnectHook = NULL;
-   screen->displayFinishedHook = NULL;
-   screen->getKeyboardLedStateHook = NULL;
-   screen->xvpHook = NULL;
+   screen->displayHook = nullptr;
+   screen->inetdDisconnectHook = nullptr;
+   screen->displayFinishedHook = nullptr;
+   screen->getKeyboardLedStateHook = nullptr;
+   screen->xvpHook = nullptr;
 
    /* initialize client list and iterator mutex */
    rfbClientListInit(screen);
@@ -1059,7 +1059,7 @@ void rfbNewFramebuffer(rfbScreenInfoPtr screen, char *framebuffer,
 
   /* For each client: */
   iterator = rfbGetClientIterator(screen);
-  while ((cl = rfbClientIteratorNext(iterator)) != NULL) {
+  while ((cl = rfbClientIteratorNext(iterator)) != nullptr) {
 
     /* Re-install color translation tables if necessary */
 
@@ -1104,11 +1104,11 @@ void rfbScreenCleanup(rfbScreenInfoPtr screen)
   if (mOnHoldClientHandlerThread) {
     mOnHoldClientHandlerThread->wait();
     delete mOnHoldClientHandlerThread;
-    mOnHoldClientHandlerThread = NULL;
+    mOnHoldClientHandlerThread = nullptr;
   }
   if (mOnHoldClientHandler) {
     delete mOnHoldClientHandler;
-    mOnHoldClientHandler = NULL;
+    mOnHoldClientHandler = nullptr;
   }
 
   if (mControlPipeHandler) {
@@ -1117,11 +1117,11 @@ void rfbScreenCleanup(rfbScreenInfoPtr screen)
   if (mControlPipeHandlerThread) {
     mControlPipeHandlerThread->wait();
     delete mControlPipeHandlerThread;
-    mControlPipeHandlerThread = NULL;
+    mControlPipeHandlerThread = nullptr;
 	}
   if (mControlPipeHandler) {
     delete mControlPipeHandler;
-    mControlPipeHandler = NULL;
+    mControlPipeHandler = nullptr;
   }
 
 #define FREE_IF(x) if(screen->x) free(screen->x)
@@ -1138,7 +1138,7 @@ void rfbScreenCleanup(rfbScreenInfoPtr screen)
 #endif
 
   /* free all 'scaled' versions of this screen */
-  while (screen->scaledScreenNext!=NULL)
+  while (screen->scaledScreenNext!=nullptr)
   {
       rfbScreenInfoPtr ptr;
       ptr = screen->scaledScreenNext;
@@ -1193,7 +1193,7 @@ void rfbShutdownServer(rfbScreenInfoPtr screen,rfbBool disconnectClients) {
       */
       write(currentCl->pipe_notify_client_thread[1], "\x00", 1);
       /* And wait for it to finish. */
-      pthread_join(currentCl->client_thread, NULL);
+      pthread_join(currentCl->client_thread, nullptr);
 #else
       rfbClientConnectionGone(currentCl);
 #endif
@@ -1266,11 +1266,11 @@ rfbUpdateClient(rfbClientPtr cl)
       if(screen->deferUpdateTime == 0) {
           rfbSendFramebufferUpdate(cl,cl->modifiedRegion);
       } else if(cl->startDeferring.tv_usec == 0) {
-        gettimeofday(&cl->startDeferring,NULL);
+        gettimeofday(&cl->startDeferring,nullptr);
         if(cl->startDeferring.tv_usec == 0)
           cl->startDeferring.tv_usec++;
       } else {
-        gettimeofday(&tv,NULL);
+        gettimeofday(&tv,nullptr);
         if(tv.tv_sec < cl->startDeferring.tv_sec /* at midnight */
            || ((tv.tv_sec-cl->startDeferring.tv_sec)*1000
                +(tv.tv_usec-cl->startDeferring.tv_usec)/1000)
@@ -1283,12 +1283,12 @@ rfbUpdateClient(rfbClientPtr cl)
 
     if (!cl->viewOnly && cl->lastPtrX >= 0) {
       if(cl->startPtrDeferring.tv_usec == 0) {
-        gettimeofday(&cl->startPtrDeferring,NULL);
+        gettimeofday(&cl->startPtrDeferring,nullptr);
         if(cl->startPtrDeferring.tv_usec == 0)
           cl->startPtrDeferring.tv_usec++;
       } else {
         struct timeval tv;
-        gettimeofday(&tv,NULL);
+        gettimeofday(&tv,nullptr);
         if(tv.tv_sec < cl->startPtrDeferring.tv_sec /* at midnight */
            || ((tv.tv_sec-cl->startPtrDeferring.tv_sec)*1000
            +(tv.tv_usec-cl->startPtrDeferring.tv_usec)/1000)
@@ -1306,7 +1306,7 @@ rfbUpdateClient(rfbClientPtr cl)
 }
 
 rfbBool rfbIsActive(rfbScreenInfoPtr screenInfo) {
-  return screenInfo->socketState!=RFB_SOCKET_SHUTDOWN || screenInfo->clientHead!=NULL;
+  return screenInfo->socketState!=RFB_SOCKET_SHUTDOWN || screenInfo->clientHead!=nullptr;
 }
 
 void rfbRunEventLoop(rfbScreenInfoPtr screen, long usec, rfbBool runInBackground)
-- 
cgit v1.2.3

