> > Except E* don't have the same value on all platforms. > > It pretty much falls down to my first idea which was > > > > /* os_support.h or whatever */ > > #ifdef __BEOS__ > > that should be #if ENOMEM < 0 Right, much simpler :) > > > > # define FFERR(e) (e) > > #else > > # define FFERR(e) (-(e)) > > #endif > > AVERR() as this should be an exportet macro (the user after all > should be > able to test for specific errors) Ok > > It suppresses the need for AVERROR_* leaving all the semantics > > attached > > to the posix errors without folding them to 10 cases. (but we still > > need to handle OSes which don't have some defined). > > are there any? do we really use such obscure E* ? Don't think so, usual ones should cover our current needs, I don't have any #ifdef EFOO in the BeOS code, didn't see any for other platforms. Except an unused ENODATA in libavutil/internal.h. Who did this anyway ? It's nowhere used, and so should be removed. > > For the time being we could keep AVERROR_* as #defined to FFERR(E*) > > possible > > > > until we increment the versions. > > no, the major versions need to be bumped if the values change Righto, I was still asleep :) Ok I'll try that and see what it gives. It seems even simpler in the end. Fran?ois.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4