diff options
Diffstat (limited to 'src/utils')
-rw-r--r-- | src/utils/errors.c | 3 | ||||
-rw-r--r-- | src/utils/parserutilserror.h | 41 |
2 files changed, 44 insertions, 0 deletions
diff --git a/src/utils/errors.c b/src/utils/errors.c index 7c6b5ea..cded6be 100644 --- a/src/utils/errors.c +++ b/src/utils/errors.c @@ -47,6 +47,9 @@ const char *hubbub_error_to_string(hubbub_error error) case HUBBUB_NEEDDATA: result = "Insufficient data"; break; + case HUBBUB_UNKNOWN: + result = "Unknown error"; + break; } return result; diff --git a/src/utils/parserutilserror.h b/src/utils/parserutilserror.h new file mode 100644 index 0000000..3e05524 --- /dev/null +++ b/src/utils/parserutilserror.h @@ -0,0 +1,41 @@ +/* + * This file is part of Hubbub. + * Licensed under the MIT License, + * http://www.opensource.org/licenses/mit-license.php + * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org> + */ + +#ifndef hubbub_utils_parserutilserror_h_ +#define hubbub_utils_parserutilserror_h_ + +#include <parserutils/errors.h> + +#include <hubbub/errors.h> + +/** + * Convert a ParserUtils error into a LibCSS error + * + * \param error The ParserUtils error to convert + * \return The corresponding LibCSS error + */ +static inline hubbub_error hubbub_error_from_parserutils_error( + parserutils_error error) +{ + if (error == PARSERUTILS_OK) + return HUBBUB_OK; + else if (error == PARSERUTILS_NOMEM) + return HUBBUB_NOMEM; + else if (error == PARSERUTILS_BADPARM) + return HUBBUB_BADPARM; + else if (error == PARSERUTILS_INVALID) + return HUBBUB_INVALID; + else if (error == PARSERUTILS_FILENOTFOUND) + return HUBBUB_FILENOTFOUND; + else if (error == PARSERUTILS_NEEDDATA) + return HUBBUB_NEEDDATA; + + return HUBBUB_UNKNOWN; +} + +#endif + |