/* SPDX-License-Identifier: GPL-3.0-or-later */ /* * vfetch - neofetch but the ascii part is a video * * Copyright (C) 2026 Doan Luu Duc Tai * */ #include "error.h" #include int map_vfetch_error_to_exit_code(VfetchError err) { switch (err) { case VFETCH_SUCCESS: case VFETCH_SUCCESS_EXIT_EARLY: return EX_OK; case VFETCH_ERROR_INVALID_ARGUMENT: return EX_USAGE; case VFETCH_ERROR_FILE_IO: case VFETCH_ERROR_MKDIR_FAILED: case VFETCH_ERROR_STAT_FAILED: case VFETCH_ERROR_PATH_FAILED: return EX_IOERR; case VFETCH_ERROR_VIDEO_OPEN_FAILED: case VFETCH_ERROR_AV_STREAM_INFO: case VFETCH_ERROR_CACHE_INVALID: return EX_DATAERR; case VFETCH_ERROR_EXEC_FAILED: case VFETCH_ERROR_COMMAND_FAILED: case VFETCH_ERROR_MA_INIT: return EX_UNAVAILABLE; case VFETCH_ERROR_MEMORY_ALLOCATION: case VFETCH_ERROR_PIPE_CREATION: case VFETCH_ERROR_FORK_FAILED: case VFETCH_ERROR_WAITPID_FAILED: case VFETCH_ERROR_THREAD_CREATION: case VFETCH_ERROR_MUTEX_INIT: case VFETCH_ERROR_MMAP_FAILED: return EX_OSERR; case VFETCH_ERROR_CHAFA_CONFIG: default: return EX_SOFTWARE; } }