Re: [PATCH] Fix compilation and bitmap depth on debian sid
Kristian Kvilekval <[email protected]> Mon, 14 Jan 2008 09:03:11 -0800
| Newsgroups | gmane.comp.audio.zinf.devel |
|---|---|
| Message-ID | <[email protected]> |
I'll look over the patch and apply it.
I don't think there is a lot of active development, currently.
David hough completed a nice new front end for zinf, that was to be
the next version, however, development stalled. It does however,
work pretty well and I use it everyday.
You need to configure the build with
configure --enable-experimental
and change the default browser UI in ~/.zinf/preferences
MusicBrowserUI: musicbrowsermm.ui
On Mon, 2008-01-14 at 09:55 +0100, Fabio Checconi wrote:
> Hi all,
> this list seems to be not so active, anyway I've tried zinf after
> a long time, and I had several problems building and running it. This
> patch fixes the build issues reported here:
>
> http://sourceforge.net/mailarchive/forum.php?thread_name=20070811210027.1d4e2c92%40darkstar.localhost&forum_name=zinf-support
>
> and seems to be a correct fix to this tracker issue:
>
> http://sourceforge.net/tracker/index.php?func=detail&aid=1033026&group_id=51494&atid=463479
>
> Still getting segfaults on theme changes and on exit.
> Patch on top of 2.2.5, please consider applying.
>
> I'm posting the patch here and not on the tracker to ask also for the
> project status... is anyone still working on zinf?
>
>
> --
>
> diff -Naurp zinf-2.2.5.orig/base/include/player.h zinf-2.2.5/base/include/player.h
> --- zinf-2.2.5.orig/base/include/player.h 2004-02-02 18:39:35.000000000 +0100
> +++ zinf-2.2.5/base/include/player.h 2008-01-11 20:01:32.000000000 +0100
> @@ -155,13 +155,13 @@ class Player : public EventQueue
>
> #define _EQUALIZER_ENABLE_
> #ifdef _EQUALIZER_ENABLE_
> - void Player::SetEQData(Event *pEvent);
> + void SetEQData(Event *pEvent);
> #endif // _EQUALIZER_ENABLE_
> #undef _EQUALIZER_ENABLE_
>
> #define _VISUAL_ENABLE_
> #ifdef _VISUAL_ENABLE_
> - void Player::SendVisBuf(Event *pEvent);
> + void SendVisBuf(Event *pEvent);
> #endif // _VISUAL_ENABLE_
> #undef _VISUAL_ENABLE_
>
> diff -Naurp zinf-2.2.5.orig/base/include/queue.h zinf-2.2.5/base/include/queue.h
> --- zinf-2.2.5.orig/base/include/queue.h 2003-09-16 19:34:53.000000000 +0200
> +++ zinf-2.2.5/base/include/queue.h 2008-01-11 20:00:47.000000000 +0100
> @@ -24,6 +24,7 @@ ________________________________________
> #ifndef INCLUDED_QUEUE_H_
> #define INCLUDED_QUEUE_H_
>
> +#include <assert.h>
> #include "config.h"
> #include "mutex.h"
>
> diff -Naurp zinf-2.2.5.orig/ui/zinf/unix/include/GTKBitmap.h zinf-2.2.5/ui/zinf/unix/include/GTKBitmap.h
> --- zinf-2.2.5.orig/ui/zinf/unix/include/GTKBitmap.h 2003-09-16 19:36:23.000000000 +0200
> +++ zinf-2.2.5/ui/zinf/unix/include/GTKBitmap.h 2008-01-14 09:19:00.000000000 +0100
> @@ -72,6 +72,8 @@ class GTKBitmap : public Bitmap
> Error ReadleShort(FILE *file, gushort *ret);
> Error ReadleLong(FILE *file, gulong *ret);
>
> + static GdkWindow *m_rootWindow;
> +
> GdkPixmap *m_Bitmap;
> GdkPixmap *m_MaskBitmap;
>
> diff -Naurp zinf-2.2.5.orig/ui/zinf/unix/src/GTKBitmap.cpp zinf-2.2.5/ui/zinf/unix/src/GTKBitmap.cpp
> --- zinf-2.2.5.orig/ui/zinf/unix/src/GTKBitmap.cpp 2003-09-16 19:36:23.000000000 +0200
> +++ zinf-2.2.5/ui/zinf/unix/src/GTKBitmap.cpp 2008-01-14 09:19:29.000000000 +0100
> @@ -51,6 +51,8 @@ RGBQUAD;
> #define BI_RLE4 2
> #define BI_BITFIELDS 3
>
> +static GDKWindow *GTKBitmap::m_rootWindow;
> +
> GTKBitmap::GTKBitmap(string &oName)
> :Bitmap(oName)
> {
> @@ -59,7 +61,9 @@ GTKBitmap::GTKBitmap(string &oName)
> m_Bitmap = NULL;
> m_MaskBitmap = NULL;
> gdk_threads_enter();
> - m_GC = gdk_gc_new(gdk_window_foreign_new(GDK_ROOT_WINDOW()));
> + if (m_rootWindow == NULL)
> + m_rootWindow = gdk_window_foreign_new(GDK_ROOT_WINDOW());
> + m_GC = gdk_gc_new(m_rootWindow);
> gdk_threads_leave();
> m_width = 0;
> m_height = 0;
> @@ -72,8 +76,10 @@ GTKBitmap::GTKBitmap(int iWidth, int iHe
> m_oBitmapName = oName;
> shape_set = false;
> gdk_threads_enter();
> - m_Bitmap = gdk_pixmap_new(NULL, iWidth, iHeight,
> - gdk_visual_get_best_depth());
> + if (m_rootWindow == NULL)
> + m_rootWindow = gdk_window_foreign_new(GDK_ROOT_WINDOW());
> + m_Bitmap = gdk_pixmap_new(m_rootWindow, iWidth, iHeight,
> + gdk_drawable_get_depth(m_rootWindow));
> m_MaskBitmap = gdk_pixmap_new(NULL, iWidth, iHeight, 1);
> m_GC = gdk_gc_new(gdk_window_foreign_new(GDK_ROOT_WINDOW()));
> gdk_threads_leave();
> @@ -150,7 +156,7 @@ Error GTKBitmap::LoadBitmapFromDisk(stri
> newbuf = gdk_pixbuf_add_alpha(pixbuf, m_bHasTransColor,
> m_oTransColor.red,
> m_oTransColor.green, m_oTransColor.blue);
> - gdk_pixbuf_render_pixmap_and_mask(newbuf, &m_Bitmap, &m_MaskBitmap,
> + gdk_pixbuf_render_pixmap_and_mask(newbuf, &m_Bitmap, &m_MaskBitmap,
> 255);
> m_width = gdk_pixbuf_get_width(newbuf);
> m_height = gdk_pixbuf_get_height(newbuf);
> @@ -546,7 +552,8 @@ Error GTKBitmap::LoadBitmapFromDisk(stri
> gdk_gc_destroy(gc);
> }
>
> - m_Bitmap = gdk_pixmap_new(NULL, w, h, gdk_visual_get_best_depth());
> + m_Bitmap = gdk_pixmap_new(m_rootWindow, w, h,
> + gdk_drawable_get_depth(root));
> gdk_draw_rgb_image(m_Bitmap, m_GC, 0, 0, w, h, GDK_RGB_DITHER_MAX, data,
> w * 3);
>
>
> -------------------------------------------------------------------------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
> _______________________________________________
> Zinf-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/zinf-devel
--
Kristian Kvilekval
[email protected] http://www.cs.ucsb.edu/~kris w:805-636-1599 h:504-9756
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace