On Tue, 5 Dec 2006, Petr Salinger wrote:
Package: beast
Severity: important
Version: 0.6.6-7
Tags: patch
Hi,
the current version fails to build on GNU/kFreeBSD.
It uses value for errno, which is not defined on GNU/kFreeBSD.
Please choose another one from basic POSIX errors.
It would also be nice if you can inform
upstream about this issue.
Thanks in advance
Petr
- case ENODATA: return BSE_ERROR_FILE_EOF;
+ case ENOMSG: return BSE_ERROR_FILE_EOF;
the fix applied to upstream (to be released with beast-0.7.1) is:
Index: gsldatahandle-vorbis.c
===================================================================
diff -Nup .svn/text-base/gsldatahandle-vorbis.c.svn-base gsldatahandle-vorbis.c
--- gsldatahandle-vorbis.c (revision 4155)
+++ gsldatahandle-vorbis.c (working copy)
@@ -526,7 +526,7 @@ gsl_vorbis1_handle_read (GslVorbis1Handl
j = gsl_rfile_read (v1h->rfile, blength, buffer);
while (j < 0 && errno == EINTR);
if (j <= 0) /* bail on errors */
- return errno ? -errno : -ENODATA;
+ return errno ? -errno : -EIO;
gsl_vorbis_cutter_write_ogg (v1h->vcutter, j, buffer);
}
}
Index: ChangeLog
===================================================================
diff -Nup .svn/text-base/ChangeLog.svn-base ChangeLog
--- ChangeLog (revision 4155)
+++ ChangeLog (working copy)
@@ -1,3 +1,11 @@
+Thu Dec 14 23:07:16 2006 Tim Janik <[EMAIL PROTECTED]>
+
+ * gslcommon.c (gsl_error_from_errno): special case ENODATA, which is not
+ available on GNU/kFreeBSD, reported by Petr Salinger <[EMAIL
PROTECTED]>.
+
+ * gsldatahandle-vorbis.c (gsl_vorbis1_handle_read): use EIO in unclear
+ error cases, because GNU/kFreeBSD lacks ENODATA.
+
Mon Dec 11 01:13:00 2006 Tim Janik <[EMAIL PROTECTED]>
* tests/filtertest.cc (generic_filter_tests): added missing stopband
Index: gslcommon.c
===================================================================
diff -Nup .svn/text-base/gslcommon.c.svn-base gslcommon.c
--- gslcommon.c (revision 4155)
+++ gslcommon.c (working copy)
@@ -188,7 +188,10 @@ gsl_error_from_errno (gint sys_e
case EROFS:
case EPERM:
case EACCES: return BSE_ERROR_PERMS;
- case ENODATA: return BSE_ERROR_FILE_EOF;
+#ifdef ENODATA /* GNU/kFreeBSD lacks this */
+ case ENODATA:
+#endif
+ case ENOMSG: return BSE_ERROR_FILE_EOF;
case ENOMEM: return BSE_ERROR_NO_MEMORY;
case ENOSPC: return BSE_ERROR_NO_SPACE;
case ENFILE: return BSE_ERROR_NO_FILES;
---
ciaoTJ
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]