Re: SANE + UMAX

Oliver.Rauch@Wolfsburg.DE
Mon, 3 Nov 1997 22:47:27 +0100 (MET)

Hello Ben,

> I'm trying to get SANE to work with my UMAX S6E... It shows up find and
> I have it under /dev/scanner... I once got scanimage to do something, it
> moved the scanner at least, but now it doesn't work. Xscanimage never
> worked... It usually just sits for a while and then has a segmentation
> fault. I have no idea where to begin. Does anyone have any ideas?

Which sane-version do you use?

Please use sane-0.67 with sane-0.67-umax-fix.diff.gz
or just use sane-0.66

For color-mode you need to set the preview-patch that is runtime-
selectable since version 0.66

For xscanimage you have to use gtk+971025 with the patch that has been
published in this mailling list, I connect it to the end of this mail.
I hope that the fixed gtk will be available soon!

If you have any problems after that, do
export SANE_DEBUG_UMAX=128

and send me the output!

Bye
Oliver

--------------------------------------------------------------------

diff -ru gtk+971025/gdk/gdk.c gtk+971025-gtd/gdk/gdk.c
--- gtk+971025/gdk/gdk.c Fri Oct 17 11:44:27 1997
+++ gtk+971025-gtd/gdk/gdk.c Fri Oct 31 13:19:23 1997
@@ -207,7 +207,7 @@
int argc_orig = *argc;
char **argv_orig;

- argv_orig = malloc (argc_orig * sizeof(char*));
+ argv_orig = malloc ((argc_orig + 1) * sizeof(char*));
for (i = 0; i < argc_orig; i++)
argv_orig[i] = g_strdup ((*argv)[i]);
argv_orig[argc_orig] = NULL;


diff -ru gtk+971025/gtk/gtkmain.c gtk+971025-gtd/gtk/gtkmain.c
--- gtk+971025/gtk/gtkmain.c Thu Oct 2 23:15:31 1997
+++ gtk+971025-gtd/gtk/gtkmain.c Fri Oct 31 19:45:53 1997
@@ -932,9 +932,24 @@
tmp_list = idle_functions;
while (tmp_list)
{
+ GList *rp = 0;
+
idlef = tmp_list->data;

- if (gtk_idle_invoke_function (idlef) == FALSE)
+ /* Search the remove_ lists to see if the current idlef has
+ * been added (since we started running the idle_functions
+ * list). If it's been added, skip it. (We'll remove it
+ * from the list later --- see below...
+ */
+ for (rp = remove_idles; rp; rp = rp->next)
+ if (*(gint*)rp->data == idlef->tag)
+ break;
+ if (!rp && remove_idles_by_data)
+ for (rp = remove_idles_by_data; rp; rp = rp->next)
+ if (*(gpointer*)tmp_list->data == idlef->data)
+ break;
+
+ if (!rp && gtk_idle_invoke_function (idlef) == FALSE)
{
tmp_list2 = tmp_list;
tmp_list = tmp_list->next;

--
Source code, list archive, and docs: http://www.mostang.com/sane/
To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com