@@ -127,8 +127,8 @@ static void vnc_sem_debug(FAR struct vnc_session_s *session,
127127 nqueued = sq_count (& session -> updqueue );
128128 nfree = sq_count (& session -> updfree );
129129
130- freesem = session -> freesem . semcount ;
131- queuesem = session -> queuesem . semcount ;
130+ nxsem_get_value ( & session -> freesem , & freesem ) ;
131+ nxsem_get_value ( & session -> queuesem , & queuesem ) ;
132132
133133 freecount = freesem > 0 ? freesem : 0 ;
134134 queuecount = queuesem > 0 ? queuesem : 0 ;
@@ -225,6 +225,7 @@ static void vnc_free_update(FAR struct vnc_session_s *session,
225225 FAR struct vnc_fbupdate_s * update )
226226{
227227 irqstate_t flags ;
228+ int sval ;
228229
229230 /* Reserve one element from the free list. Lock the scheduler to assure
230231 * that the sq_addlast() and the nxsem_post() are atomic.
@@ -243,7 +244,9 @@ static void vnc_free_update(FAR struct vnc_session_s *session,
243244
244245 leave_critical_section (flags );
245246 vnc_sem_debug (session , "After free" , 0 );
246- DEBUGASSERT (session -> freesem .semcount <= CONFIG_VNCSERVER_NUPDATES );
247+
248+ DEBUGASSERT (nxsem_get_value (& session -> freesem , & sval ) == 0 &&
249+ sval <= CONFIG_VNCSERVER_NUPDATES );
247250}
248251
249252/****************************************************************************
@@ -322,6 +325,7 @@ static void vnc_add_queue(FAR struct vnc_session_s *session,
322325 FAR struct vnc_fbupdate_s * rect )
323326{
324327 irqstate_t flags ;
328+ int sval ;
325329
326330 /* Lock the scheduler to assure that the sq_addlast() and the nxsem_post()
327331 * are atomic.
@@ -342,7 +346,9 @@ static void vnc_add_queue(FAR struct vnc_session_s *session,
342346
343347 leave_critical_section (flags );
344348 vnc_sem_debug (session , "After add" , 0 );
345- DEBUGASSERT (session -> queuesem .semcount <= CONFIG_VNCSERVER_NUPDATES );
349+
350+ DEBUGASSERT (nxsem_get_value (& session -> queuesem , & sval ) == 0 &&
351+ sval <= CONFIG_VNCSERVER_NUPDATES );
346352}
347353
348354/****************************************************************************
0 commit comments