mirror of https://github.com/GNOME/gimp.git
First batch of changes to merge the Win32 version. This will be
done in pieces, don't expect to be able to compile on Win32 from these sources yet. Ans of course, the official version of GTk+ doesn't include the Win32 stuff yet.
This commit is contained in:
parent
f67bef8c61
commit
a27cedc001
|
@ -15,15 +15,26 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
#include "config.h"
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <process.h> /* For _getpid() */
|
||||
#endif
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "libgimp/gimpfeatures.h"
|
||||
|
@ -73,8 +84,6 @@
|
|||
#include "color_notebook.h"
|
||||
#include "color_select.h"
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
#define LOGO_WIDTH_MIN 300
|
||||
|
@ -169,21 +178,22 @@ splash_logo_load_size (GtkWidget *window)
|
|||
if (logo_pixmap)
|
||||
return TRUE;
|
||||
|
||||
g_snprintf (buf, sizeof(buf), "%s/gimp1_1_splash.ppm", DATADIR);
|
||||
g_snprintf (buf, sizeof(buf), "%s" G_DIR_SEPARATOR_S "gimp1_1_splash.ppm",
|
||||
DATADIR);
|
||||
|
||||
fp = fopen (buf, "rb");
|
||||
if (!fp)
|
||||
return 0;
|
||||
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
if (strcmp (buf, "P6\n") != 0)
|
||||
{
|
||||
fclose (fp);
|
||||
return 0;
|
||||
}
|
||||
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
sscanf (buf, "%d %d", &logo_width, &logo_height);
|
||||
|
||||
fclose (fp);
|
||||
|
@ -204,24 +214,25 @@ splash_logo_load (GtkWidget *window)
|
|||
if (logo_pixmap)
|
||||
return TRUE;
|
||||
|
||||
g_snprintf (buf, sizeof(buf), "%s/gimp1_1_splash.ppm", DATADIR);
|
||||
g_snprintf (buf, sizeof(buf), "%s" G_DIR_SEPARATOR_S "gimp1_1_splash.ppm",
|
||||
DATADIR);
|
||||
|
||||
fp = fopen (buf, "rb");
|
||||
if (!fp)
|
||||
return 0;
|
||||
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
if (strcmp (buf, "P6\n") != 0)
|
||||
{
|
||||
fclose (fp);
|
||||
return 0;
|
||||
}
|
||||
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
sscanf (buf, "%d %d", &logo_width, &logo_height);
|
||||
|
||||
fgets (buf, 1024, fp);
|
||||
fgets (buf, sizeof (buf), fp);
|
||||
if (strcmp (buf, "255\n") != 0)
|
||||
{
|
||||
fclose (fp);
|
||||
|
@ -273,6 +284,7 @@ splash_text_draw (GtkWidget *widget)
|
|||
((logo_area_width - gdk_string_width (font, NAME)) / 2),
|
||||
(0.25 * logo_area_height),
|
||||
NAME);
|
||||
gdk_font_unref (font);
|
||||
|
||||
font = gdk_font_load ("-Adobe-Helvetica-Bold-R-Normal--*-120-*-*-*-*-*-*");
|
||||
gdk_draw_string (widget->window,
|
||||
|
@ -293,6 +305,7 @@ splash_text_draw (GtkWidget *widget)
|
|||
((logo_area_width - gdk_string_width (font, AUTHORS)) / 2),
|
||||
(0.80 * logo_area_height),
|
||||
AUTHORS);
|
||||
gdk_font_unref (font);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -424,7 +437,7 @@ app_init_update_status(char *label1val,
|
|||
{
|
||||
while ( strlen (label2val) > max_label_length )
|
||||
{
|
||||
temp = strchr (label2val, '/');
|
||||
temp = strchr (label2val, G_DIR_SEPARATOR);
|
||||
if (temp == NULL) /* for sanity */
|
||||
break;
|
||||
temp++;
|
||||
|
@ -462,7 +475,7 @@ app_init (void)
|
|||
gimp_dir = gimp_directory ();
|
||||
if (gimp_dir[0] != '\000')
|
||||
{
|
||||
g_snprintf (filename, MAXPATHLEN, "%s/gtkrc", gimp_dir);
|
||||
g_snprintf (filename, MAXPATHLEN, "%s" G_DIR_SEPARATOR_S "gtkrc", gimp_dir);
|
||||
|
||||
if ((be_verbose == TRUE) || (no_splash == TRUE))
|
||||
g_print (_("parsing \"%s\"\n"), filename);
|
||||
|
@ -539,7 +552,8 @@ app_init (void)
|
|||
if (swap_path == NULL)
|
||||
swap_path = "/tmp";
|
||||
toast_old_temp_files ();
|
||||
path = g_strdup_printf ("%s/gimpswap.%ld", swap_path, (long)getpid ());
|
||||
path = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "gimpswap.%ld",
|
||||
swap_path, (long)getpid ());
|
||||
tile_swap_add (path, NULL, NULL);
|
||||
g_free (path);
|
||||
|
||||
|
@ -759,9 +773,17 @@ toast_old_temp_files (void)
|
|||
*/
|
||||
|
||||
int pid = atoi (entry->d_name + 9);
|
||||
#ifndef NATIVE_WIN32
|
||||
if (kill (pid, 0))
|
||||
#else
|
||||
/* On Windows, you can't remove open files anyhow,
|
||||
* so no harm trying.
|
||||
*/
|
||||
#endif
|
||||
|
||||
{
|
||||
g_string_sprintf (filename, "%s/%s", swap_path, entry->d_name);
|
||||
g_string_sprintf (filename, "%s" G_DIR_SEPARATOR_S "%s",
|
||||
swap_path, entry->d_name);
|
||||
unlink (filename->str);
|
||||
}
|
||||
}
|
||||
|
|
12
app/appenv.h
12
app/appenv.h
|
@ -19,11 +19,23 @@
|
|||
#define __APPENV_H__
|
||||
|
||||
#include "glib.h"
|
||||
|
||||
/* The GIMP shouldn't need to know much about X11 (or Windows), so
|
||||
* I'll remove this inclusion of gdkx.h. This will speed up compilations
|
||||
* a bit, too. If some source file needs gdkx.h, it can include it.
|
||||
*/
|
||||
#if 0
|
||||
#include "gdk/gdkx.h"
|
||||
#endif
|
||||
|
||||
#include "gtk/gtk.h"
|
||||
#include "gimpsetF.h"
|
||||
#include "colormap_dialog.t.h"
|
||||
|
||||
/* Without gdkx.h no GDK_DISPLAY() */
|
||||
#if 0
|
||||
#define DISPLAY ((Display *) GDK_DISPLAY())
|
||||
#endif
|
||||
|
||||
/* important macros - we reuse the ones from glib */
|
||||
#define BOUNDS(a,x,y) CLAMP(a,x,y)
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
|
||||
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "asupsample.h"
|
||||
|
|
|
@ -15,12 +15,22 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <process.h> /* For _getpid() */
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "drawable.h"
|
||||
#include "errors.h"
|
||||
|
@ -416,7 +426,8 @@ generate_unique_filename (void)
|
|||
{
|
||||
pid_t pid;
|
||||
pid = getpid ();
|
||||
return g_strdup_printf ("%s/gimp%d.%d", temp_path, (int) pid, swap_index++);
|
||||
return g_strdup_printf ("%s" G_DIR_SEPARATOR_S "gimp%d.%d",
|
||||
temp_path, (int) pid, swap_index++);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -16,6 +16,8 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "tile_cache.h"
|
||||
#include "tile_manager.h"
|
||||
#include "tile_swap.h"
|
||||
|
|
|
@ -1,13 +1,21 @@
|
|||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef USE_PTHREADS
|
||||
#include <pthread.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <io.h>
|
||||
#endif
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
#define MAX_OPEN_SWAP_FILES 16
|
||||
|
@ -352,7 +360,11 @@ tile_swap_open (SwapFile *swap_file)
|
|||
nopen_swap_files -= 1;
|
||||
}
|
||||
|
||||
#ifndef NATIVE_WIN32
|
||||
swap_file->fd = open (swap_file->filename, O_CREAT|O_RDWR, S_IRUSR|S_IWUSR);
|
||||
#else
|
||||
swap_file->fd = open (swap_file->filename, O_CREAT|O_RDWR|_O_BINARY, _S_IREAD|_S_IWRITE);
|
||||
#endif
|
||||
if (swap_file->fd == -1)
|
||||
{
|
||||
g_message (_("unable to open swap file...BAD THINGS WILL HAPPEN SOON"));
|
||||
|
|
|
@ -1,9 +1,13 @@
|
|||
#include "config.h"
|
||||
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "app_procs.h"
|
||||
|
@ -43,10 +47,14 @@ batch_init ()
|
|||
{
|
||||
if (!read_from_stdin)
|
||||
{
|
||||
#ifndef NATIVE_WIN32 /* for now */
|
||||
g_print (_("reading batch commands from stdin\n"));
|
||||
gdk_input_add (STDIN_FILENO, GDK_INPUT_READ, batch_read, NULL);
|
||||
read_from_stdin = TRUE;
|
||||
}
|
||||
#else
|
||||
g_error ("Batch mode from standard input not implemented on Win32");
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
|
||||
#define ROUND(A) floor((A)+0.5)
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif /* M_PI */
|
||||
|
||||
static Blob *
|
||||
blob_new (int y, int height)
|
||||
{
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "color_area.h"
|
||||
#include "color_notebook.h"
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "color_select.h"
|
||||
|
|
|
@ -429,9 +429,11 @@ ipal_clear (GimpColormapDialog* ipal)
|
|||
|
||||
palette = GTK_WIDGET(ipal->palette);
|
||||
|
||||
width = palette->allocation.width;
|
||||
height = palette->allocation.height;
|
||||
row = g_new(guchar, width * 3);
|
||||
/* Watch out for negative values (at least on Win32) */
|
||||
width = (int) (gint16) palette->allocation.width;
|
||||
height = (int) (gint16) palette->allocation.height;
|
||||
if (width > 0)
|
||||
row = g_new(guchar, width * 3);
|
||||
|
||||
gtk_preview_size(ipal->palette, width, height);
|
||||
|
||||
|
@ -448,7 +450,8 @@ ipal_clear (GimpColormapDialog* ipal)
|
|||
for (j = 0; j < 4 && i+j < height; j++)
|
||||
gtk_preview_draw_row (ipal->palette, row, 0, i + j, width);
|
||||
}
|
||||
g_free (row);
|
||||
if (width > 0)
|
||||
g_free (row);
|
||||
gtk_widget_draw (palette, NULL);
|
||||
}
|
||||
|
||||
|
|
|
@ -18,12 +18,24 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimpbrushgenerated.h"
|
||||
#include "paint_core.h"
|
||||
#include "gimprc.h"
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define OVERSAMPLING 5
|
||||
|
||||
|
@ -228,7 +240,7 @@ gimp_brush_generated_generate(GimpBrushGenerated *brush)
|
|||
register double exponent;
|
||||
register guchar a;
|
||||
register int length;
|
||||
register char *lookup;
|
||||
register guchar *lookup;
|
||||
double buffer[OVERSAMPLING];
|
||||
register double sum, c, s, tx, ty;
|
||||
int width, height;
|
||||
|
|
|
@ -18,12 +18,24 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimpbrushgenerated.h"
|
||||
#include "paint_core.h"
|
||||
#include "gimprc.h"
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define OVERSAMPLING 5
|
||||
|
||||
|
@ -228,7 +240,7 @@ gimp_brush_generated_generate(GimpBrushGenerated *brush)
|
|||
register double exponent;
|
||||
register guchar a;
|
||||
register int length;
|
||||
register char *lookup;
|
||||
register guchar *lookup;
|
||||
double buffer[OVERSAMPLING];
|
||||
register double sum, c, s, tx, ty;
|
||||
int width, height;
|
||||
|
|
|
@ -18,12 +18,24 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimpbrushgenerated.h"
|
||||
#include "paint_core.h"
|
||||
#include "gimprc.h"
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define OVERSAMPLING 5
|
||||
|
||||
|
@ -228,7 +240,7 @@ gimp_brush_generated_generate(GimpBrushGenerated *brush)
|
|||
register double exponent;
|
||||
register guchar a;
|
||||
register int length;
|
||||
register char *lookup;
|
||||
register guchar *lookup;
|
||||
double buffer[OVERSAMPLING];
|
||||
register double sum, c, s, tx, ty;
|
||||
int width, height;
|
||||
|
|
|
@ -18,15 +18,29 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifndef S_ISDIR
|
||||
#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
|
||||
#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
|
||||
#endif
|
||||
#ifndef S_IXUSR
|
||||
#define S_IXUSR _S_IEXEC
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <glib.h>
|
||||
#include "datafiles.h"
|
||||
|
@ -70,7 +84,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
next_token = local_path;
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
while (token)
|
||||
{
|
||||
|
@ -90,8 +104,8 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
if (!err && S_ISDIR(filestat.st_mode))
|
||||
{
|
||||
if (path[strlen(path) - 1] != '/')
|
||||
strcat(path, "/");
|
||||
if (path[strlen(path) - 1] != G_DIR_SEPARATOR)
|
||||
strcat(path, G_DIR_SEPARATOR_S);
|
||||
|
||||
/* Open directory */
|
||||
dir = opendir(path);
|
||||
|
@ -124,7 +138,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
g_free(path);
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
} /* while */
|
||||
|
||||
g_free(local_path);
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
#include <strings.h>
|
||||
#include <string.h>
|
||||
#include "gimpdrawableP.h"
|
||||
#include "gimpsignal.h"
|
||||
#include "gimage.h"
|
||||
|
|
|
@ -15,6 +15,8 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "gimpobjectP.h"
|
||||
#include "gimpobject.h"
|
||||
#include "gimpsignal.h"
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "buildmenu.h"
|
||||
#include "channels_dialog.h"
|
||||
|
|
|
@ -18,15 +18,29 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifndef S_ISDIR
|
||||
#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
|
||||
#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
|
||||
#endif
|
||||
#ifndef S_IXUSR
|
||||
#define S_IXUSR _S_IEXEC
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <glib.h>
|
||||
#include "datafiles.h"
|
||||
|
@ -70,7 +84,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
next_token = local_path;
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
while (token)
|
||||
{
|
||||
|
@ -90,8 +104,8 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
if (!err && S_ISDIR(filestat.st_mode))
|
||||
{
|
||||
if (path[strlen(path) - 1] != '/')
|
||||
strcat(path, "/");
|
||||
if (path[strlen(path) - 1] != G_DIR_SEPARATOR)
|
||||
strcat(path, G_DIR_SEPARATOR_S);
|
||||
|
||||
/* Open directory */
|
||||
dir = opendir(path);
|
||||
|
@ -124,7 +138,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
g_free(path);
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
} /* while */
|
||||
|
||||
g_free(local_path);
|
||||
|
|
|
@ -18,10 +18,15 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "module_db.h"
|
||||
|
@ -335,16 +340,14 @@ module_info_free (module_info *mod)
|
|||
/* helper functions */
|
||||
|
||||
|
||||
/* name must be of the form lib*.so */
|
||||
/* TODO: need support for WIN32-style dll names. Maybe this function
|
||||
* should live in libgmodule? */
|
||||
/* name must be of the form lib*.so (Unix) or *.dll (Win32) */
|
||||
static gboolean
|
||||
valid_module_name (const char *filename)
|
||||
{
|
||||
const char *basename;
|
||||
int len;
|
||||
|
||||
basename = strrchr (filename, '/');
|
||||
basename = strrchr (filename, G_DIR_SEPARATOR);
|
||||
if (basename)
|
||||
basename++;
|
||||
else
|
||||
|
@ -352,6 +355,7 @@ valid_module_name (const char *filename)
|
|||
|
||||
len = strlen (basename);
|
||||
|
||||
#ifndef WIN32
|
||||
if (len < 3 + 1 + 3)
|
||||
return FALSE;
|
||||
|
||||
|
@ -360,6 +364,10 @@ valid_module_name (const char *filename)
|
|||
|
||||
if (strcmp (basename + len - 3, ".so"))
|
||||
return FALSE;
|
||||
#else
|
||||
if (g_strcasecmp (basename + len - 4, ".dll"))
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "about_dialog.h"
|
||||
#include "actionarea.h"
|
||||
|
|
|
@ -45,9 +45,11 @@ tips_dialog_create ()
|
|||
if (tips_count == 0)
|
||||
{
|
||||
if ((gimp_data_dir = getenv ("GIMP_DATADIR")) != NULL)
|
||||
temp = (char *) g_strdup_printf ("%s/%s", gimp_data_dir, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
gimp_data_dir, TIPS_FILE_NAME);
|
||||
else
|
||||
temp = (char *) g_strdup_printf ("%s/%s", DATADIR, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
DATADIR, TIPS_FILE_NAME);
|
||||
read_tips_file ((char *)temp);
|
||||
g_free (temp);
|
||||
}
|
||||
|
@ -219,7 +221,7 @@ read_tips_file (char *filename)
|
|||
char *tip = NULL;
|
||||
char *str = NULL;
|
||||
|
||||
fp = fopen (filename, "rb");
|
||||
fp = fopen (filename, "r");
|
||||
if (!fp)
|
||||
{
|
||||
store_tip (_("Your GIMP tips file appears to be missing!\n"
|
||||
|
|
|
@ -329,7 +329,7 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
|||
/* if the first mouse button is down, check for automatic
|
||||
* scrolling...
|
||||
*/
|
||||
if ((mevent->state & Button1Mask) && !active_tool->scroll_lock)
|
||||
if ((mevent->state & GDK_BUTTON1_MASK) && !active_tool->scroll_lock)
|
||||
{
|
||||
if (mevent->x < 0 || mevent->y < 0 ||
|
||||
mevent->x > gdisp->disp_width ||
|
||||
|
|
|
@ -329,7 +329,7 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
|||
/* if the first mouse button is down, check for automatic
|
||||
* scrolling...
|
||||
*/
|
||||
if ((mevent->state & Button1Mask) && !active_tool->scroll_lock)
|
||||
if ((mevent->state & GDK_BUTTON1_MASK) && !active_tool->scroll_lock)
|
||||
{
|
||||
if (mevent->x < 0 || mevent->y < 0 ||
|
||||
mevent->x > gdisp->disp_width ||
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "buildmenu.h"
|
||||
#include "channels_dialog.h"
|
||||
|
|
|
@ -329,7 +329,7 @@ gdisplay_canvas_events (GtkWidget *canvas,
|
|||
/* if the first mouse button is down, check for automatic
|
||||
* scrolling...
|
||||
*/
|
||||
if ((mevent->state & Button1Mask) && !active_tool->scroll_lock)
|
||||
if ((mevent->state & GDK_BUTTON1_MASK) && !active_tool->scroll_lock)
|
||||
{
|
||||
if (mevent->x < 0 || mevent->y < 0 ||
|
||||
mevent->x > gdisp->disp_width ||
|
||||
|
|
|
@ -13,14 +13,15 @@
|
|||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include "docindexif.h"
|
||||
#include "docindex.h"
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "docindexif.h"
|
||||
#include "docindex.h"
|
||||
|
||||
idea_manager *ideas = NULL;
|
||||
static GList *idea_list = NULL; /* of gchar *. */
|
||||
static gint x = 0, y = 0, width = 0, height = 0;
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
|
||||
#include <ctype.h>
|
||||
#include <gdk/gdkprivate.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
|
|
@ -19,15 +19,32 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
#include "gtk/gtk.h"
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <io.h>
|
||||
#ifndef S_IRUSR
|
||||
#define S_IRUSR _S_IREAD
|
||||
#endif
|
||||
#ifndef S_IWUSR
|
||||
#define S_IWUSR _S_IWRITE
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "commands.h"
|
||||
#include "session.h"
|
||||
|
|
10
app/errors.c
10
app/errors.c
|
@ -15,14 +15,24 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <signal.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#ifdef HAVE_SYS_TIME_H
|
||||
#include <sys/time.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_TIMES_H
|
||||
#include <sys/times.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#include <time.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#include "appenv.h"
|
||||
|
|
|
@ -16,16 +16,29 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <process.h> /* For _getpid() */
|
||||
#include <direct.h> /* For _mkdir() */
|
||||
#define mkdir(path,mode) _mkdir(path)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "cursorutil.h"
|
||||
|
@ -534,7 +547,8 @@ file_open_callback (GtkWidget *w,
|
|||
if (GTK_WIDGET_VISIBLE (fileload))
|
||||
return;
|
||||
|
||||
gtk_file_selection_set_filename (GTK_FILE_SELECTION(fileload), "./");
|
||||
gtk_file_selection_set_filename (GTK_FILE_SELECTION(fileload),
|
||||
"." G_DIR_SEPARATOR_S);
|
||||
gtk_window_set_title (GTK_WINDOW (fileload), _("Load Image"));
|
||||
}
|
||||
|
||||
|
@ -707,7 +721,8 @@ file_save_as_callback (GtkWidget *w,
|
|||
if (GTK_WIDGET_VISIBLE (filesave))
|
||||
return;
|
||||
|
||||
gtk_file_selection_set_filename (GTK_FILE_SELECTION(filesave), "./");
|
||||
gtk_file_selection_set_filename (GTK_FILE_SELECTION(filesave),
|
||||
"." G_DIR_SEPARATOR_S);
|
||||
gtk_window_set_title (GTK_WINDOW (filesave), _("Save Image"));
|
||||
}
|
||||
|
||||
|
@ -1386,9 +1401,9 @@ file_open_ok_callback (GtkWidget *w,
|
|||
if (err == 0 && (buf.st_mode & S_IFDIR))
|
||||
{
|
||||
GString *s = g_string_new (filename);
|
||||
if (s->str[s->len - 1] != '/')
|
||||
if (s->str[s->len - 1] != G_DIR_SEPARATOR)
|
||||
{
|
||||
g_string_append_c (s, '/');
|
||||
g_string_append_c (s, G_DIR_SEPARATOR);
|
||||
}
|
||||
gtk_file_selection_set_filename (fs, s->str);
|
||||
g_string_free (s, TRUE);
|
||||
|
@ -1549,7 +1564,7 @@ file_save_ok_callback (GtkWidget *w,
|
|||
if (buf.st_mode & S_IFDIR)
|
||||
{
|
||||
GString *s = g_string_new (filename);
|
||||
g_string_append_c (s, '/');
|
||||
g_string_append_c (s, G_DIR_SEPARATOR);
|
||||
gtk_file_selection_set_filename (fs, s->str);
|
||||
g_string_free (s, TRUE);
|
||||
return;
|
||||
|
@ -2106,7 +2121,8 @@ file_temp_name_invoker (Argument *args)
|
|||
if (id == 0)
|
||||
pid = getpid();
|
||||
|
||||
g_string_sprintf (s, "%s/gimp_temp.%d%d.%s", temp_path, pid, id++, (char*)args[0].value.pdb_pointer);
|
||||
g_string_sprintf (s, "%s" G_DIR_SEPARATOR_S "gimp_temp.%d%d.%s",
|
||||
temp_path, pid, id++, (char*)args[0].value.pdb_pointer);
|
||||
|
||||
return_args = procedural_db_return_args (&file_temp_name_proc, TRUE);
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "buildmenu.h"
|
||||
#include "channels_dialog.h"
|
||||
|
|
|
@ -22,6 +22,13 @@
|
|||
#include <sys/stat.h>
|
||||
#include <time.h>
|
||||
#include <glib.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifndef S_ISREG
|
||||
#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include "general.h"
|
||||
|
||||
char*
|
||||
|
@ -34,14 +41,14 @@ search_in_path (char *search_path,
|
|||
int err;
|
||||
|
||||
local_path = g_strdup (search_path);
|
||||
token = strtok (local_path, ":");
|
||||
token = strtok (local_path, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
while (token)
|
||||
{
|
||||
sprintf (path, "%s", token);
|
||||
|
||||
if (token[strlen (token) - 1] != '/')
|
||||
strcat (path, "/");
|
||||
if (token[strlen (token) - 1] != G_DIR_SEPARATOR)
|
||||
strcat (path, G_DIR_SEPARATOR_S);
|
||||
strcat (path, filename);
|
||||
|
||||
err = stat (path, &buf);
|
||||
|
@ -51,7 +58,7 @@ search_in_path (char *search_path,
|
|||
break;
|
||||
}
|
||||
|
||||
token = strtok (NULL, ":");
|
||||
token = strtok (NULL, G_SEARCHPATH_SEPARATOR_S);
|
||||
}
|
||||
|
||||
g_free (local_path);
|
||||
|
|
|
@ -18,12 +18,24 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimpbrushgenerated.h"
|
||||
#include "paint_core.h"
|
||||
#include "gimprc.h"
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define OVERSAMPLING 5
|
||||
|
||||
|
@ -228,7 +240,7 @@ gimp_brush_generated_generate(GimpBrushGenerated *brush)
|
|||
register double exponent;
|
||||
register guchar a;
|
||||
register int length;
|
||||
register char *lookup;
|
||||
register guchar *lookup;
|
||||
double buffer[OVERSAMPLING];
|
||||
register double sum, c, s, tx, ty;
|
||||
int width, height;
|
||||
|
|
|
@ -15,14 +15,22 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimpbrushgenerated.h"
|
||||
#include "brush_header.h"
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
#include <strings.h>
|
||||
#include <string.h>
|
||||
#include "gimpdrawableP.h"
|
||||
#include "gimpsignal.h"
|
||||
#include "gimage.h"
|
||||
|
|
|
@ -148,12 +148,15 @@
|
|||
* - Add a Gradient brush mode (color changes as you move it).
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
@ -168,7 +171,6 @@
|
|||
#include "session.h"
|
||||
#include "gradient_header.h"
|
||||
|
||||
#include "config.h"
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
/***** Magic numbers *****/
|
||||
|
@ -5970,17 +5972,20 @@ build_user_filename(char *name, char *path_str)
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup(path_str);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
filename = NULL;
|
||||
|
||||
if (token) {
|
||||
if (*token == '~') {
|
||||
if (!home)
|
||||
return NULL;
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
} else {
|
||||
path = g_strdup(token);
|
||||
} /* else */
|
||||
|
||||
filename = g_strdup_printf("%s/%s", path, name);
|
||||
filename = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, name);
|
||||
|
||||
g_free(path);
|
||||
} /* if */
|
||||
|
|
|
@ -148,12 +148,15 @@
|
|||
* - Add a Gradient brush mode (color changes as you move it).
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
@ -168,7 +171,6 @@
|
|||
#include "session.h"
|
||||
#include "gradient_header.h"
|
||||
|
||||
#include "config.h"
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
/***** Magic numbers *****/
|
||||
|
@ -5970,17 +5972,20 @@ build_user_filename(char *name, char *path_str)
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup(path_str);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
filename = NULL;
|
||||
|
||||
if (token) {
|
||||
if (*token == '~') {
|
||||
if (!home)
|
||||
return NULL;
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
} else {
|
||||
path = g_strdup(token);
|
||||
} /* else */
|
||||
|
||||
filename = g_strdup_printf("%s/%s", path, name);
|
||||
filename = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, name);
|
||||
|
||||
g_free(path);
|
||||
} /* if */
|
||||
|
|
|
@ -34,11 +34,15 @@
|
|||
* the structures so we can find which one we are taking about.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "color_area.h"
|
||||
#include "color_notebook.h"
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "color_select.h"
|
||||
|
|
|
@ -148,12 +148,15 @@
|
|||
* - Add a Gradient brush mode (color changes as you move it).
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
@ -168,7 +171,6 @@
|
|||
#include "session.h"
|
||||
#include "gradient_header.h"
|
||||
|
||||
#include "config.h"
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
/***** Magic numbers *****/
|
||||
|
@ -5970,17 +5972,20 @@ build_user_filename(char *name, char *path_str)
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup(path_str);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
filename = NULL;
|
||||
|
||||
if (token) {
|
||||
if (*token == '~') {
|
||||
if (!home)
|
||||
return NULL;
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
} else {
|
||||
path = g_strdup(token);
|
||||
} /* else */
|
||||
|
||||
filename = g_strdup_printf("%s/%s", path, name);
|
||||
filename = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, name);
|
||||
|
||||
g_free(path);
|
||||
} /* if */
|
||||
|
|
|
@ -34,11 +34,15 @@
|
|||
* the structures so we can find which one we are taking about.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
|
|
@ -18,10 +18,15 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "module_db.h"
|
||||
|
@ -335,16 +340,14 @@ module_info_free (module_info *mod)
|
|||
/* helper functions */
|
||||
|
||||
|
||||
/* name must be of the form lib*.so */
|
||||
/* TODO: need support for WIN32-style dll names. Maybe this function
|
||||
* should live in libgmodule? */
|
||||
/* name must be of the form lib*.so (Unix) or *.dll (Win32) */
|
||||
static gboolean
|
||||
valid_module_name (const char *filename)
|
||||
{
|
||||
const char *basename;
|
||||
int len;
|
||||
|
||||
basename = strrchr (filename, '/');
|
||||
basename = strrchr (filename, G_DIR_SEPARATOR);
|
||||
if (basename)
|
||||
basename++;
|
||||
else
|
||||
|
@ -352,6 +355,7 @@ valid_module_name (const char *filename)
|
|||
|
||||
len = strlen (basename);
|
||||
|
||||
#ifndef WIN32
|
||||
if (len < 3 + 1 + 3)
|
||||
return FALSE;
|
||||
|
||||
|
@ -360,6 +364,10 @@ valid_module_name (const char *filename)
|
|||
|
||||
if (strcmp (basename + len - 3, ".so"))
|
||||
return FALSE;
|
||||
#else
|
||||
if (g_strcasecmp (basename + len - 4, ".dll"))
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -15,11 +15,18 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include "appenv.h"
|
||||
|
@ -1257,20 +1264,25 @@ palette_create_entries(gpointer client_data,
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup (palette_path);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
if (token)
|
||||
{
|
||||
if (*token == '~')
|
||||
{
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
if (home)
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
else
|
||||
/* Just ignore the ~ if no HOME ??? */
|
||||
path = g_strdup(token + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
path = g_strdup(token);
|
||||
}
|
||||
|
||||
entries->filename = g_strdup_printf ("%s/%s", path, palette_name);
|
||||
entries->filename = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, palette_name);
|
||||
|
||||
g_free (path);
|
||||
}
|
||||
|
|
|
@ -17,13 +17,17 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "buildmenu.h"
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "about_dialog.h"
|
||||
#include "actionarea.h"
|
||||
|
|
|
@ -45,9 +45,11 @@ tips_dialog_create ()
|
|||
if (tips_count == 0)
|
||||
{
|
||||
if ((gimp_data_dir = getenv ("GIMP_DATADIR")) != NULL)
|
||||
temp = (char *) g_strdup_printf ("%s/%s", gimp_data_dir, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
gimp_data_dir, TIPS_FILE_NAME);
|
||||
else
|
||||
temp = (char *) g_strdup_printf ("%s/%s", DATADIR, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
DATADIR, TIPS_FILE_NAME);
|
||||
read_tips_file ((char *)temp);
|
||||
g_free (temp);
|
||||
}
|
||||
|
@ -219,7 +221,7 @@ read_tips_file (char *filename)
|
|||
char *tip = NULL;
|
||||
char *str = NULL;
|
||||
|
||||
fp = fopen (filename, "rb");
|
||||
fp = fopen (filename, "r");
|
||||
if (!fp)
|
||||
{
|
||||
store_tip (_("Your GIMP tips file appears to be missing!\n"
|
||||
|
|
68
app/main.c
68
app/main.c
|
@ -22,8 +22,13 @@
|
|||
#include <signal.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_SYS_WAIT_H
|
||||
#include <sys/wait.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "libgimp/gserialize.h"
|
||||
|
||||
#ifndef WAIT_ANY
|
||||
|
@ -40,7 +45,9 @@
|
|||
#include "libgimp/gimpintl.h"
|
||||
|
||||
static RETSIGTYPE on_signal (int);
|
||||
#ifdef SIGCHLD
|
||||
static RETSIGTYPE on_sig_child (int);
|
||||
#endif
|
||||
static void init (void);
|
||||
static void test_gserialize();
|
||||
static void on_error (const gchar* domain,
|
||||
|
@ -137,7 +144,7 @@ main (int argc, char **argv)
|
|||
no_data = FALSE;
|
||||
no_splash = FALSE;
|
||||
no_splash_image = FALSE;
|
||||
#ifdef HAVE_SHM_H
|
||||
#if defined (HAVE_SHM_H) || defined (NATIVE_WIN32)
|
||||
use_shm = TRUE;
|
||||
#else
|
||||
use_shm = FALSE;
|
||||
|
@ -274,7 +281,7 @@ main (int argc, char **argv)
|
|||
|
||||
if (show_help)
|
||||
{
|
||||
g_print (_("\007Usage: %s [option ...] [files ...]\n"), argv[0]);
|
||||
g_print (_("Usage: %s [option ...] [files ...]\n"), argv[0]);
|
||||
g_print (_("Valid options are:\n"));
|
||||
g_print (_(" -h --help Output this help.\n"));
|
||||
g_print (_(" -v --version Output version info.\n"));
|
||||
|
@ -300,18 +307,38 @@ main (int argc, char **argv)
|
|||
g_set_message_handler ((GPrintFunc) message_func);
|
||||
|
||||
/* Handle some signals */
|
||||
#ifdef SIGHUP
|
||||
signal (SIGHUP, on_signal);
|
||||
#endif
|
||||
#ifdef SIGINT
|
||||
signal (SIGINT, on_signal);
|
||||
#endif
|
||||
#ifdef SIGQUIT
|
||||
signal (SIGQUIT, on_signal);
|
||||
#endif
|
||||
#ifdef SIGABRT
|
||||
signal (SIGABRT, on_signal);
|
||||
#endif
|
||||
#ifdef SIGBUS
|
||||
signal (SIGBUS, on_signal);
|
||||
#endif
|
||||
#ifdef SIGSEGV
|
||||
signal (SIGSEGV, on_signal);
|
||||
#endif
|
||||
#ifdef SIGPIPE
|
||||
signal (SIGPIPE, on_signal);
|
||||
#endif
|
||||
#ifdef SIGTERM
|
||||
signal (SIGTERM, on_signal);
|
||||
#endif
|
||||
#ifdef SIGFPE
|
||||
signal (SIGFPE, on_signal);
|
||||
#endif
|
||||
|
||||
#ifdef SIGCHLD
|
||||
/* Handle child exits */
|
||||
signal (SIGCHLD, on_sig_child);
|
||||
#endif
|
||||
|
||||
g_log_set_handler(NULL,
|
||||
G_LOG_LEVEL_ERROR | G_LOG_FLAG_FATAL,
|
||||
|
@ -332,6 +359,18 @@ main (int argc, char **argv)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#ifdef NATIVE_WIN32
|
||||
|
||||
/* In case we build this as a windowed application */
|
||||
|
||||
int _stdcall
|
||||
WinMain (int hInstance, int hPrevInstance, char *lpszCmdLine, int nCmdShow)
|
||||
{
|
||||
return main (__argc, __argv);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
static void
|
||||
init ()
|
||||
{
|
||||
|
@ -356,45 +395,67 @@ static RETSIGTYPE
|
|||
on_signal (int sig_num)
|
||||
{
|
||||
if (caught_fatal_sig)
|
||||
/* raise (sig_num);*/
|
||||
#ifdef NATIVE_WIN32
|
||||
raise (sig_num);
|
||||
#else
|
||||
kill (getpid (), sig_num);
|
||||
#endif
|
||||
caught_fatal_sig = 1;
|
||||
|
||||
switch (sig_num)
|
||||
{
|
||||
#ifdef SIGHUP
|
||||
case SIGHUP:
|
||||
terminate (_("sighup caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGINT
|
||||
case SIGINT:
|
||||
terminate (_("sigint caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGQUIT
|
||||
case SIGQUIT:
|
||||
terminate (_("sigquit caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGABRT
|
||||
case SIGABRT:
|
||||
terminate (_("sigabrt caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGBUS
|
||||
case SIGBUS:
|
||||
fatal_error (_("sigbus caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGSEGV
|
||||
case SIGSEGV:
|
||||
fatal_error (_("sigsegv caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGPIPE
|
||||
case SIGPIPE:
|
||||
terminate (_("sigpipe caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGTERM
|
||||
case SIGTERM:
|
||||
terminate (_("sigterm caught"));
|
||||
break;
|
||||
#endif
|
||||
#ifdef SIGFPE
|
||||
case SIGFPE:
|
||||
fatal_error (_("sigfpe caught"));
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
fatal_error (_("unknown signal"));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef SIGCHLD
|
||||
static RETSIGTYPE
|
||||
on_sig_child (int sig_num)
|
||||
{
|
||||
|
@ -408,6 +469,7 @@ on_sig_child (int sig_num)
|
|||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
|
|
|
@ -18,10 +18,15 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "module_db.h"
|
||||
|
@ -335,16 +340,14 @@ module_info_free (module_info *mod)
|
|||
/* helper functions */
|
||||
|
||||
|
||||
/* name must be of the form lib*.so */
|
||||
/* TODO: need support for WIN32-style dll names. Maybe this function
|
||||
* should live in libgmodule? */
|
||||
/* name must be of the form lib*.so (Unix) or *.dll (Win32) */
|
||||
static gboolean
|
||||
valid_module_name (const char *filename)
|
||||
{
|
||||
const char *basename;
|
||||
int len;
|
||||
|
||||
basename = strrchr (filename, '/');
|
||||
basename = strrchr (filename, G_DIR_SEPARATOR);
|
||||
if (basename)
|
||||
basename++;
|
||||
else
|
||||
|
@ -352,6 +355,7 @@ valid_module_name (const char *filename)
|
|||
|
||||
len = strlen (basename);
|
||||
|
||||
#ifndef WIN32
|
||||
if (len < 3 + 1 + 3)
|
||||
return FALSE;
|
||||
|
||||
|
@ -360,6 +364,10 @@ valid_module_name (const char *filename)
|
|||
|
||||
if (strcmp (basename + len - 3, ".so"))
|
||||
return FALSE;
|
||||
#else
|
||||
if (g_strcasecmp (basename + len - 4, ".dll"))
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -15,10 +15,17 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimprc.h"
|
||||
#include "paint_funcs.h"
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
|
||||
#define ROUND(A) floor((A)+0.5)
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif /* M_PI */
|
||||
|
||||
static Blob *
|
||||
blob_new (int y, int height)
|
||||
{
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -15,10 +15,17 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "gimprc.h"
|
||||
#include "paint_funcs.h"
|
||||
|
|
|
@ -15,11 +15,18 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include "appenv.h"
|
||||
|
@ -1257,20 +1264,25 @@ palette_create_entries(gpointer client_data,
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup (palette_path);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
if (token)
|
||||
{
|
||||
if (*token == '~')
|
||||
{
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
if (home)
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
else
|
||||
/* Just ignore the ~ if no HOME ??? */
|
||||
path = g_strdup(token + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
path = g_strdup(token);
|
||||
}
|
||||
|
||||
entries->filename = g_strdup_printf ("%s/%s", path, palette_name);
|
||||
entries->filename = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, palette_name);
|
||||
|
||||
g_free (path);
|
||||
}
|
||||
|
|
|
@ -17,13 +17,17 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "buildmenu.h"
|
||||
|
|
|
@ -15,6 +15,8 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "gimpobjectP.h"
|
||||
#include "gimpobject.h"
|
||||
#include "gimpsignal.h"
|
||||
|
|
|
@ -15,13 +15,21 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
#include "datafiles.h"
|
||||
|
|
|
@ -15,9 +15,17 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "drawable.h"
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "appenv.h"
|
||||
#include "about_dialog.h"
|
||||
#include "actionarea.h"
|
||||
|
|
|
@ -854,7 +854,7 @@ procedural_db_dump (Argument *args)
|
|||
|
||||
if (filename)
|
||||
{
|
||||
if (! (procedural_db_out = fopen (filename, "wb")))
|
||||
if (! (procedural_db_out = fopen (filename, "w")))
|
||||
success = FALSE;
|
||||
}
|
||||
else
|
||||
|
|
|
@ -319,7 +319,7 @@ rotate_tool_motion (tool, gdisp_ptr)
|
|||
|
||||
/* constrain the angle to 15-degree multiples if ctrl is held down */
|
||||
|
||||
if (transform_core->state & ControlMask)
|
||||
if (transform_core->state & GDK_CONTROL_MASK)
|
||||
transform_core->trans_info[ANGLE] = FIFTEEN_DEG * (int) ((transform_core->trans_info[REAL_ANGLE] +
|
||||
FIFTEEN_DEG / 2.0) /
|
||||
FIFTEEN_DEG);
|
||||
|
|
|
@ -310,10 +310,10 @@ scale_tool_motion (tool, gdisp_ptr)
|
|||
}
|
||||
|
||||
/* if just the control key is down, affect only the height */
|
||||
if (transform_core->state & ControlMask && ! (transform_core->state & ShiftMask))
|
||||
if (transform_core->state & GDK_CONTROL_MASK && ! (transform_core->state & GDK_SHIFT_MASK))
|
||||
diff_x = 0;
|
||||
/* if just the shift key is down, affect only the width */
|
||||
else if (transform_core->state & ShiftMask && ! (transform_core->state & ControlMask))
|
||||
else if (transform_core->state & GDK_SHIFT_MASK && ! (transform_core->state & GDK_CONTROL_MASK))
|
||||
diff_y = 0;
|
||||
|
||||
*x1 += diff_x;
|
||||
|
|
|
@ -15,12 +15,22 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <process.h> /* For _getpid() */
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "drawable.h"
|
||||
#include "errors.h"
|
||||
|
@ -416,7 +426,8 @@ generate_unique_filename (void)
|
|||
{
|
||||
pid_t pid;
|
||||
pid = getpid ();
|
||||
return g_strdup_printf ("%s/gimp%d.%d", temp_path, (int) pid, swap_index++);
|
||||
return g_strdup_printf ("%s" G_DIR_SEPARATOR_S "gimp%d.%d",
|
||||
temp_path, (int) pid, swap_index++);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -447,6 +447,7 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
int scale,
|
||||
PixelRegion *textPR)
|
||||
{
|
||||
GdkColor black;
|
||||
int black_pixel;
|
||||
int pixel;
|
||||
int value;
|
||||
|
@ -457,7 +458,9 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
unsigned char * data;
|
||||
|
||||
scale2 = scale * scale;
|
||||
black_pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
black_pixel = black.pixel;
|
||||
data = textPR->data;
|
||||
|
||||
for (y = 0, scaley = 0; y < textPR->h; y++, scaley += scale)
|
||||
|
@ -587,8 +590,10 @@ text_render (GImage *gimage,
|
|||
gdk_gc_set_font (gc, font);
|
||||
|
||||
/* get black and white pixels for this gdisplay */
|
||||
black.pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
white.pixel = WhitePixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
white.red = white.green = white.blue = 65535;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &white, FALSE, TRUE);
|
||||
|
||||
/* Render the text into the pixmap.
|
||||
* Since the pixmap may not fully bound the text (because we limit its size)
|
||||
|
|
|
@ -16,6 +16,8 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "tile_cache.h"
|
||||
#include "tile_manager.h"
|
||||
#include "tile_swap.h"
|
||||
|
|
|
@ -1,13 +1,21 @@
|
|||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef USE_PTHREADS
|
||||
#include <pthread.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <io.h>
|
||||
#endif
|
||||
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
#define MAX_OPEN_SWAP_FILES 16
|
||||
|
@ -352,7 +360,11 @@ tile_swap_open (SwapFile *swap_file)
|
|||
nopen_swap_files -= 1;
|
||||
}
|
||||
|
||||
#ifndef NATIVE_WIN32
|
||||
swap_file->fd = open (swap_file->filename, O_CREAT|O_RDWR, S_IRUSR|S_IWUSR);
|
||||
#else
|
||||
swap_file->fd = open (swap_file->filename, O_CREAT|O_RDWR|_O_BINARY, _S_IREAD|_S_IWRITE);
|
||||
#endif
|
||||
if (swap_file->fd == -1)
|
||||
{
|
||||
g_message (_("unable to open swap file...BAD THINGS WILL HAPPEN SOON"));
|
||||
|
|
|
@ -45,9 +45,11 @@ tips_dialog_create ()
|
|||
if (tips_count == 0)
|
||||
{
|
||||
if ((gimp_data_dir = getenv ("GIMP_DATADIR")) != NULL)
|
||||
temp = (char *) g_strdup_printf ("%s/%s", gimp_data_dir, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
gimp_data_dir, TIPS_FILE_NAME);
|
||||
else
|
||||
temp = (char *) g_strdup_printf ("%s/%s", DATADIR, TIPS_FILE_NAME);
|
||||
temp = (char *) g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
DATADIR, TIPS_FILE_NAME);
|
||||
read_tips_file ((char *)temp);
|
||||
g_free (temp);
|
||||
}
|
||||
|
@ -219,7 +221,7 @@ read_tips_file (char *filename)
|
|||
char *tip = NULL;
|
||||
char *str = NULL;
|
||||
|
||||
fp = fopen (filename, "rb");
|
||||
fp = fopen (filename, "r");
|
||||
if (!fp)
|
||||
{
|
||||
store_tip (_("Your GIMP tips file appears to be missing!\n"
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
|
||||
#define ROUND(A) floor((A)+0.5)
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif /* M_PI */
|
||||
|
||||
static Blob *
|
||||
blob_new (int y, int height)
|
||||
{
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
|
||||
#define ROUND(A) floor((A)+0.5)
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif /* M_PI */
|
||||
|
||||
static Blob *
|
||||
blob_new (int y, int height)
|
||||
{
|
||||
|
|
|
@ -15,9 +15,17 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "drawable.h"
|
||||
|
|
|
@ -319,7 +319,7 @@ rotate_tool_motion (tool, gdisp_ptr)
|
|||
|
||||
/* constrain the angle to 15-degree multiples if ctrl is held down */
|
||||
|
||||
if (transform_core->state & ControlMask)
|
||||
if (transform_core->state & GDK_CONTROL_MASK)
|
||||
transform_core->trans_info[ANGLE] = FIFTEEN_DEG * (int) ((transform_core->trans_info[REAL_ANGLE] +
|
||||
FIFTEEN_DEG / 2.0) /
|
||||
FIFTEEN_DEG);
|
||||
|
|
|
@ -310,10 +310,10 @@ scale_tool_motion (tool, gdisp_ptr)
|
|||
}
|
||||
|
||||
/* if just the control key is down, affect only the height */
|
||||
if (transform_core->state & ControlMask && ! (transform_core->state & ShiftMask))
|
||||
if (transform_core->state & GDK_CONTROL_MASK && ! (transform_core->state & GDK_SHIFT_MASK))
|
||||
diff_x = 0;
|
||||
/* if just the shift key is down, affect only the width */
|
||||
else if (transform_core->state & ShiftMask && ! (transform_core->state & ControlMask))
|
||||
else if (transform_core->state & GDK_SHIFT_MASK && ! (transform_core->state & GDK_CONTROL_MASK))
|
||||
diff_y = 0;
|
||||
|
||||
*x1 += diff_x;
|
||||
|
|
|
@ -235,7 +235,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
y2 = paint_core->lasty;
|
||||
|
||||
/* If the control key is down, move the src target and return */
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
src_x = x1;
|
||||
src_y = y1;
|
||||
|
@ -269,7 +269,7 @@ clone_paint_func (PaintCore *paint_core,
|
|||
break;
|
||||
|
||||
case INIT_PAINT :
|
||||
if (paint_core->state & ControlMask)
|
||||
if (paint_core->state & GDK_CONTROL_MASK)
|
||||
{
|
||||
the_src_gdisp = gdisp;
|
||||
clone_set_src_drawable(drawable);
|
||||
|
|
|
@ -447,6 +447,7 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
int scale,
|
||||
PixelRegion *textPR)
|
||||
{
|
||||
GdkColor black;
|
||||
int black_pixel;
|
||||
int pixel;
|
||||
int value;
|
||||
|
@ -457,7 +458,9 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
unsigned char * data;
|
||||
|
||||
scale2 = scale * scale;
|
||||
black_pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
black_pixel = black.pixel;
|
||||
data = textPR->data;
|
||||
|
||||
for (y = 0, scaley = 0; y < textPR->h; y++, scaley += scale)
|
||||
|
@ -587,8 +590,10 @@ text_render (GImage *gimage,
|
|||
gdk_gc_set_font (gc, font);
|
||||
|
||||
/* get black and white pixels for this gdisplay */
|
||||
black.pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
white.pixel = WhitePixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
white.red = white.green = white.blue = 65535;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &white, FALSE, TRUE);
|
||||
|
||||
/* Render the text into the pixmap.
|
||||
* Since the pixmap may not fully bound the text (because we limit its size)
|
||||
|
|
|
@ -15,9 +15,17 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifndef HAVE_RINT
|
||||
#define rint(x) floor (x + 0.5)
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "drawable.h"
|
||||
|
|
|
@ -319,7 +319,7 @@ rotate_tool_motion (tool, gdisp_ptr)
|
|||
|
||||
/* constrain the angle to 15-degree multiples if ctrl is held down */
|
||||
|
||||
if (transform_core->state & ControlMask)
|
||||
if (transform_core->state & GDK_CONTROL_MASK)
|
||||
transform_core->trans_info[ANGLE] = FIFTEEN_DEG * (int) ((transform_core->trans_info[REAL_ANGLE] +
|
||||
FIFTEEN_DEG / 2.0) /
|
||||
FIFTEEN_DEG);
|
||||
|
|
|
@ -310,10 +310,10 @@ scale_tool_motion (tool, gdisp_ptr)
|
|||
}
|
||||
|
||||
/* if just the control key is down, affect only the height */
|
||||
if (transform_core->state & ControlMask && ! (transform_core->state & ShiftMask))
|
||||
if (transform_core->state & GDK_CONTROL_MASK && ! (transform_core->state & GDK_SHIFT_MASK))
|
||||
diff_x = 0;
|
||||
/* if just the shift key is down, affect only the width */
|
||||
else if (transform_core->state & ShiftMask && ! (transform_core->state & ControlMask))
|
||||
else if (transform_core->state & GDK_SHIFT_MASK && ! (transform_core->state & GDK_CONTROL_MASK))
|
||||
diff_y = 0;
|
||||
|
||||
*x1 += diff_x;
|
||||
|
|
|
@ -447,6 +447,7 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
int scale,
|
||||
PixelRegion *textPR)
|
||||
{
|
||||
GdkColor black;
|
||||
int black_pixel;
|
||||
int pixel;
|
||||
int value;
|
||||
|
@ -457,7 +458,9 @@ text_gdk_image_to_region (GdkImage *image,
|
|||
unsigned char * data;
|
||||
|
||||
scale2 = scale * scale;
|
||||
black_pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
black_pixel = black.pixel;
|
||||
data = textPR->data;
|
||||
|
||||
for (y = 0, scaley = 0; y < textPR->h; y++, scaley += scale)
|
||||
|
@ -587,8 +590,10 @@ text_render (GImage *gimage,
|
|||
gdk_gc_set_font (gc, font);
|
||||
|
||||
/* get black and white pixels for this gdisplay */
|
||||
black.pixel = BlackPixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
white.pixel = WhitePixel (DISPLAY, DefaultScreen (DISPLAY));
|
||||
black.red = black.green = black.blue = 0;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &black, FALSE, TRUE);
|
||||
white.red = white.green = white.blue = 65535;
|
||||
gdk_colormap_alloc_color (gdk_colormap_get_system (), &white, FALSE, TRUE);
|
||||
|
||||
/* Render the text into the pixmap.
|
||||
* Since the pixmap may not fully bound the text (because we limit its size)
|
||||
|
|
|
@ -148,12 +148,15 @@
|
|||
* - Add a Gradient brush mode (color changes as you move it).
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include "appenv.h"
|
||||
#include "colormaps.h"
|
||||
|
@ -168,7 +171,6 @@
|
|||
#include "session.h"
|
||||
#include "gradient_header.h"
|
||||
|
||||
#include "config.h"
|
||||
#include "libgimp/gimpintl.h"
|
||||
|
||||
/***** Magic numbers *****/
|
||||
|
@ -5970,17 +5972,20 @@ build_user_filename(char *name, char *path_str)
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup(path_str);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
filename = NULL;
|
||||
|
||||
if (token) {
|
||||
if (*token == '~') {
|
||||
if (!home)
|
||||
return NULL;
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
} else {
|
||||
path = g_strdup(token);
|
||||
} /* else */
|
||||
|
||||
filename = g_strdup_printf("%s/%s", path, name);
|
||||
filename = g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, name);
|
||||
|
||||
g_free(path);
|
||||
} /* if */
|
||||
|
|
|
@ -15,11 +15,18 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include "appenv.h"
|
||||
|
@ -1257,20 +1264,25 @@ palette_create_entries(gpointer client_data,
|
|||
home = g_get_home_dir ();
|
||||
local_path = g_strdup (palette_path);
|
||||
first_token = local_path;
|
||||
token = xstrsep(&first_token, ":");
|
||||
token = xstrsep(&first_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
if (token)
|
||||
{
|
||||
if (*token == '~')
|
||||
{
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
if (home)
|
||||
path = g_strdup_printf("%s%s", home, token + 1);
|
||||
else
|
||||
/* Just ignore the ~ if no HOME ??? */
|
||||
path = g_strdup(token + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
path = g_strdup(token);
|
||||
}
|
||||
|
||||
entries->filename = g_strdup_printf ("%s/%s", path, palette_name);
|
||||
entries->filename = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "%s",
|
||||
path, palette_name);
|
||||
|
||||
g_free (path);
|
||||
}
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "color_area.h"
|
||||
#include "color_notebook.h"
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
|
||||
#include <glib.h>
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
#include "config.h"
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <errno.h>
|
||||
|
||||
#include <glib.h>
|
||||
|
|
|
@ -18,15 +18,29 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_DIRENT_H
|
||||
#include <dirent.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifndef S_ISDIR
|
||||
#define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR)
|
||||
#define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG)
|
||||
#endif
|
||||
#ifndef S_IXUSR
|
||||
#define S_IXUSR _S_IEXEC
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <glib.h>
|
||||
#include "datafiles.h"
|
||||
|
@ -70,7 +84,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
next_token = local_path;
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
|
||||
while (token)
|
||||
{
|
||||
|
@ -90,8 +104,8 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
if (!err && S_ISDIR(filestat.st_mode))
|
||||
{
|
||||
if (path[strlen(path) - 1] != '/')
|
||||
strcat(path, "/");
|
||||
if (path[strlen(path) - 1] != G_DIR_SEPARATOR)
|
||||
strcat(path, G_DIR_SEPARATOR_S);
|
||||
|
||||
/* Open directory */
|
||||
dir = opendir(path);
|
||||
|
@ -124,7 +138,7 @@ datafiles_read_directories (char *path_str,
|
|||
|
||||
g_free(path);
|
||||
|
||||
token = xstrsep(&next_token, ":");
|
||||
token = xstrsep(&next_token, G_SEARCHPATH_SEPARATOR_S);
|
||||
} /* while */
|
||||
|
||||
g_free(local_path);
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "appenv.h"
|
||||
#include "actionarea.h"
|
||||
#include "color_select.h"
|
||||
|
|
Loading…
Reference in New Issue