MCPcopy Create free account
hub / github.com/RavEngine/RavEngine / SDL_SensorClose

Function SDL_SensorClose

deps/SDL2/src/sensor/SDL_sensor.c:389–437  ·  view source on GitHub ↗

* Close a sensor previously opened with SDL_SensorOpen() */

Source from the content-addressed store, hash-verified

387 * Close a sensor previously opened with SDL_SensorOpen()
388 */
389void
390SDL_SensorClose(SDL_Sensor * sensor)
391{
392 SDL_Sensor *sensorlist;
393 SDL_Sensor *sensorlistprev;
394
395 if (!SDL_PrivateSensorValid(sensor)) {
396 return;
397 }
398
399 SDL_LockSensors();
400
401 /* First decrement ref count */
402 if (--sensor->ref_count > 0) {
403 SDL_UnlockSensors();
404 return;
405 }
406
407 if (SDL_updating_sensor) {
408 SDL_UnlockSensors();
409 return;
410 }
411
412 sensor->driver->Close(sensor);
413 sensor->hwdata = NULL;
414
415 sensorlist = SDL_sensors;
416 sensorlistprev = NULL;
417 while (sensorlist) {
418 if (sensor == sensorlist) {
419 if (sensorlistprev) {
420 /* unlink this entry */
421 sensorlistprev->next = sensorlist->next;
422 } else {
423 SDL_sensors = sensor->next;
424 }
425 break;
426 }
427 sensorlistprev = sensorlist;
428 sensorlist = sensorlist->next;
429 }
430
431 SDL_free(sensor->name);
432
433 /* Free the data associated with this sensor */
434 SDL_free(sensor);
435
436 SDL_UnlockSensors();
437}
438
439void
440SDL_SensorQuit(void)

Callers 2

SDL_SensorQuitFunction · 0.85
SDL_SensorUpdateFunction · 0.85

Calls 5

SDL_PrivateSensorValidFunction · 0.85
SDL_LockSensorsFunction · 0.85
SDL_UnlockSensorsFunction · 0.85
SDL_freeFunction · 0.85
CloseMethod · 0.45

Tested by

no test coverage detected