Update to libXmu 1.1.3

This commit is contained in:
matthieu 2020-01-14 20:58:31 +00:00
parent 82151e1da6
commit 6869a5f294
16 changed files with 551 additions and 266 deletions

View File

@ -1,3 +1,132 @@
commit e9efe2d027b4c46cf6834cc532222f8ad1d1d3c3
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Mar 16 11:40:41 2019 -0700
libXmu 1.1.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 9469d3593c9fb1b60cac0602d97f274e209163d7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Dec 7 19:46:09 2018 -0800
Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 3e706ded2e46464732170ae06bdc9e9d286179ed
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Nov 19 22:26:50 2018 -0800
Update README for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 5bd4eb821bd9e88c3a131de9a8b781f5184e22b1
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 5 11:32:12 2018 -0700
Apply standard X.Org formatting & bracketing to StrToWidg.c
Makes code easier for humans to read and gets rid of gcc warning:
StrToWidg.c: In function XmuCvtStringToWidget:
StrToWidg.c:107:3: warning: this for clause does not guard... [-Wmisleading-indentation]
for (widgetP = parent->core.popup_list; i; i--, widgetP++)
^~~
StrToWidg.c:114:5: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the for
XtStringConversionWarning(fromVal->addr, XtRWidget);
^~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit bc78541e9a9a95bbd5413d62bfc114ddc9265c36
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 5 11:26:17 2018 -0700
Convert tabs to spaces in StrToWidg.c
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4f0939d69a17d37be414d0de7ff717e92e7e2b11
Author: Mihail Konev <k.mvc@ya.ru>
Date: Thu Jan 26 13:52:49 2017 +1000
autogen: add default patch prefix
Signed-off-by: Mihail Konev <k.mvc@ya.ru>
commit 99265d50e4c100182f1375b59c5ecf3e5732356d
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date: Mon Mar 9 12:00:52 2015 +0000
autogen.sh: use quoted string variables
Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent
fall-outs, when they contain space.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
commit 6a79027955dc7f10569ac6e904844624224d5c60
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Tue Jan 24 10:32:07 2017 +1000
autogen.sh: use exec instead of waiting for configure to finish
Syncs the invocation of configure with the one from the server.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
commit 4459e6940fe3fdf26a8d5d4c71989498bc400a62
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date: Sat Sep 13 21:57:39 2014 +0100
Include <direct.h> for _getdrives() on Win32
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: David Macek <david.macek.0@gmail.com>
commit 24bcdbd17913a1ca39c975113767aa2c556b69cc
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date: Sat Sep 13 21:57:17 2014 +0100
Remove pointless X_NOT_POSIX
Both stdlib.h (only included for prototype of atoi()), and limits.h (only
included for PATH_MAX) are in C89, so putting this under X_NOT_POSIX seems a
little excessive.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 22d9c590901e121936f50dee97dc60c4f7defb63
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Dec 2 13:00:05 2013 -0800
ShapeEllipseOrRoundedRectangle: Check height AND width, not width twice
Fixed to match check in ShapeOval()
https://bugs.freedesktop.org/show_bug.cgi?id=72245
Fixes cppcheck warning:
[ShapeWidg.c:204]: (style) Same expression on both sides of '||'.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit e02c30fac32e4873240e507cadc416f710188feb
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Nov 17 09:41:14 2013 -0800
Remove SUNSHLIB support for SunOS 4.x shared libraries
Never enabled in modular builds, was only enabled for SunOS 4.x in imake.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
commit 2539e539eafdac88177c8ee30b043c5d52f017e4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Sep 7 21:28:14 2013 -0700

View File

@ -20,3 +20,5 @@ if LINT
lint:
(cd src && $(MAKE) $(MFLAGS) lint)
endif LINT
EXTRA_DIST = README.md

View File

@ -51,7 +51,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(srcdir)/xmu.pc.in $(srcdir)/xmuu.pc.in \
$(top_srcdir)/configure COPYING ChangeLog INSTALL compile \
@ -327,6 +327,7 @@ SUBDIRS = include src doc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = xmu.pc xmuu.pc
MAINTAINERCLEANFILES = ChangeLog INSTALL
EXTRA_DIST = README.md
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive

View File

@ -1,3 +1,6 @@
libXmu - X miscellaneous utility routines library
-------------------------------------------------
This library contains miscellaneous utilities and is not part of the Xlib
standard. It contains routines which only use public interfaces so that it
may be layered on top of any proprietary implementation of Xlib or Xt.
@ -15,23 +18,15 @@ configure.
All questions regarding this software should be directed at the
Xorg mailing list:
http://lists.freedesktop.org/mailman/listinfo/xorg
Please submit bug reports to the Xorg bugzilla:
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
https://lists.x.org/mailman/listinfo/xorg
The master development code repository can be found at:
git://anongit.freedesktop.org/git/xorg/lib/libXmu
https://gitlab.freedesktop.org/xorg/lib/libXmu
http://cgit.freedesktop.org/xorg/lib/libXmu
Please submit bug reports and requests to merge patches there.
For patch submission instructions, see:
http://www.x.org/wiki/Development/Documentation/SubmittingPatches
For more information on the git code manager, see:
http://wiki.x.org/wiki/GitPage
https://www.x.org/wiki/Development/Documentation/SubmittingPatches

281
lib/libXmu/aclocal.m4 vendored
View File

@ -8606,32 +8606,63 @@ m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 1 (pkg-config-0.24)
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
dnl serial 11 (pkg-config-0.29.1)
dnl
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl
dnl This program is distributed in the hope that it will be useful, but
dnl WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
dnl 02111-1307, USA.
dnl
dnl As a special exception to the GNU General Public License, if you
dnl distribute this file as part of a program that contains a
dnl configuration script generated by Autoconf, you may include it under
dnl the same distribution terms that you use for the rest of that
dnl program.
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
# ----------------------------------
dnl PKG_PREREQ(MIN-VERSION)
dnl -----------------------
dnl Since: 0.29
dnl
dnl Verify that the version of the pkg-config macros are at least
dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
dnl installed version of pkg-config, this checks the developer's version
dnl of pkg.m4 when generating configure.
dnl
dnl To ensure that this macro is defined, also add:
dnl m4_ifndef([PKG_PREREQ],
dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
dnl
dnl See the "Since" comment for each macro you use to see what version
dnl of the macros you require.
m4_defun([PKG_PREREQ],
[m4_define([PKG_MACROS_VERSION], [0.29.1])
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
])dnl PKG_PREREQ
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
dnl ----------------------------------
dnl Since: 0.16
dnl
dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
dnl first found in the path. Checks that the version of pkg-config found
dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
dnl used since that's the first version where most current features of
dnl pkg-config existed.
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@ -8653,18 +8684,19 @@ if test -n "$PKG_CONFIG"; then
PKG_CONFIG=""
fi
fi[]dnl
])# PKG_PROG_PKG_CONFIG
])dnl PKG_PROG_PKG_CONFIG
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
#
# Check to see whether a particular set of modules exists. Similar
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
# only at the first occurence in configure.ac, so if the first place
# it's called might be skipped (such as if it is within an "if", you
# have to call PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
dnl -------------------------------------------------------------------
dnl Since: 0.18
dnl
dnl Check to see whether a particular set of modules exists. Similar to
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
dnl
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
dnl only at the first occurence in configure.ac, so if the first place
dnl it's called might be skipped (such as if it is within an "if", you
dnl have to call PKG_CHECK_EXISTS manually
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
@ -8674,8 +8706,10 @@ m4_ifvaln([$3], [else
$3])dnl
fi])
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
# ---------------------------------------------
dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
dnl ---------------------------------------------
dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
dnl pkg_failed based on the result.
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
@ -8687,10 +8721,11 @@ m4_define([_PKG_CONFIG],
else
pkg_failed=untried
fi[]dnl
])# _PKG_CONFIG
])dnl _PKG_CONFIG
# _PKG_SHORT_ERRORS_SUPPORTED
# -----------------------------
dnl _PKG_SHORT_ERRORS_SUPPORTED
dnl ---------------------------
dnl Internal check to see if pkg-config supports short errors.
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -8698,19 +8733,17 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
else
_pkg_short_errors_supported=no
fi[]dnl
])# _PKG_SHORT_ERRORS_SUPPORTED
])dnl _PKG_SHORT_ERRORS_SUPPORTED
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
# [ACTION-IF-NOT-FOUND])
#
#
# Note that if there is a possibility the first call to
# PKG_CHECK_MODULES might not happen, you should be sure to include an
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
#
#
# --------------------------------------------------------------
dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
dnl [ACTION-IF-NOT-FOUND])
dnl --------------------------------------------------------------
dnl Since: 0.4.0
dnl
dnl Note that if there is a possibility the first call to
dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@ -8764,16 +8797,40 @@ else
AC_MSG_RESULT([yes])
$3
fi[]dnl
])# PKG_CHECK_MODULES
])dnl PKG_CHECK_MODULES
# PKG_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable pkgconfigdir as the location where a module
# should install pkg-config .pc files. By default the directory is
# $libdir/pkgconfig, but the default can be changed by passing
# DIRECTORY. The user can override through the --with-pkgconfigdir
# parameter.
dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
dnl [ACTION-IF-NOT-FOUND])
dnl ---------------------------------------------------------------------
dnl Since: 0.29
dnl
dnl Checks for existence of MODULES and gathers its build flags with
dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
dnl and VARIABLE-PREFIX_LIBS from --libs.
dnl
dnl Note that if there is a possibility the first call to
dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
dnl configure.ac.
AC_DEFUN([PKG_CHECK_MODULES_STATIC],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
_save_PKG_CONFIG=$PKG_CONFIG
PKG_CONFIG="$PKG_CONFIG --static"
PKG_CHECK_MODULES($@)
PKG_CONFIG=$_save_PKG_CONFIG[]dnl
])dnl PKG_CHECK_MODULES_STATIC
dnl PKG_INSTALLDIR([DIRECTORY])
dnl -------------------------
dnl Since: 0.27
dnl
dnl Substitutes the variable pkgconfigdir as the location where a module
dnl should install pkg-config .pc files. By default the directory is
dnl $libdir/pkgconfig, but the default can be changed by passing
dnl DIRECTORY. The user can override through the --with-pkgconfigdir
dnl parameter.
AC_DEFUN([PKG_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
m4_pushdef([pkg_description],
@ -8784,16 +8841,18 @@ AC_ARG_WITH([pkgconfigdir],
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_INSTALLDIR
])dnl PKG_INSTALLDIR
# PKG_NOARCH_INSTALLDIR(DIRECTORY)
# -------------------------
# Substitutes the variable noarch_pkgconfigdir as the location where a
# module should install arch-independent pkg-config .pc files. By
# default the directory is $datadir/pkgconfig, but the default can be
# changed by passing DIRECTORY. The user can override through the
# --with-noarch-pkgconfigdir parameter.
dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
dnl --------------------------------
dnl Since: 0.27
dnl
dnl Substitutes the variable noarch_pkgconfigdir as the location where a
dnl module should install arch-independent pkg-config .pc files. By
dnl default the directory is $datadir/pkgconfig, but the default can be
dnl changed by passing DIRECTORY. The user can override through the
dnl --with-noarch-pkgconfigdir parameter.
AC_DEFUN([PKG_NOARCH_INSTALLDIR],
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
m4_pushdef([pkg_description],
@ -8804,7 +8863,24 @@ AC_ARG_WITH([noarch-pkgconfigdir],
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
m4_popdef([pkg_default])
m4_popdef([pkg_description])
]) dnl PKG_NOARCH_INSTALLDIR
])dnl PKG_NOARCH_INSTALLDIR
dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
dnl -------------------------------------------
dnl Since: 0.28
dnl
dnl Retrieves the value of the pkg-config variable for the given module.
AC_DEFUN([PKG_CHECK_VAR],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
_PKG_CONFIG([$1], [variable="][$3]["], [$2])
AS_VAR_COPY([$1], [pkg_cv_][$1])
AS_VAR_IF([$1], [""], [$5], [$4])dnl
])dnl PKG_CHECK_VAR
# Copyright (C) 2002-2012 Free Software Foundation, Inc.
#
@ -9829,7 +9905,7 @@ AC_SUBST([am__untar])
dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure.
dnl
dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
dnl Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
dnl
dnl Permission is hereby granted, free of charge, to any person obtaining a
dnl copy of this software and associated documentation files (the "Software"),
@ -9866,7 +9942,7 @@ dnl DEALINGS IN THE SOFTWARE.
# See the "minimum version" comment for each macro you use to see what
# version you require.
m4_defun([XORG_MACROS_VERSION],[
m4_define([vers_have], [1.19.0])
m4_define([vers_have], [1.19.2])
m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
m4_if(m4_cmp(maj_have, maj_needed), 0,,
@ -9944,6 +10020,17 @@ AC_DEFUN([XORG_MANPAGE_SECTIONS],[
AC_REQUIRE([AC_CANONICAL_HOST])
AC_REQUIRE([AC_PROG_SED])
case $host_os in
solaris*)
# Solaris 2.0 - 11.3 use SysV man page section numbers, so we
# check for a man page file found in later versions that use
# traditional section numbers instead
AC_CHECK_FILE([/usr/share/man/man7/attributes.7],
[SYSV_MAN_SECTIONS=false], [SYSV_MAN_SECTIONS=true])
;;
*) SYSV_MAN_SECTIONS=false ;;
esac
if test x$APP_MAN_SUFFIX = x ; then
APP_MAN_SUFFIX=1
fi
@ -9959,9 +10046,9 @@ if test x$LIB_MAN_DIR = x ; then
fi
if test x$FILE_MAN_SUFFIX = x ; then
case $host_os in
solaris*) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
case $SYSV_MAN_SECTIONS in
true) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
esac
fi
if test x$FILE_MAN_DIR = x ; then
@ -9969,9 +10056,9 @@ if test x$FILE_MAN_DIR = x ; then
fi
if test x$MISC_MAN_SUFFIX = x ; then
case $host_os in
solaris*) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
case $SYSV_MAN_SECTIONS in
true) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
esac
fi
if test x$MISC_MAN_DIR = x ; then
@ -9979,9 +10066,9 @@ if test x$MISC_MAN_DIR = x ; then
fi
if test x$DRIVER_MAN_SUFFIX = x ; then
case $host_os in
solaris*) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
case $SYSV_MAN_SECTIONS in
true) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
esac
fi
if test x$DRIVER_MAN_DIR = x ; then
@ -9989,9 +10076,9 @@ if test x$DRIVER_MAN_DIR = x ; then
fi
if test x$ADMIN_MAN_SUFFIX = x ; then
case $host_os in
solaris*) ADMIN_MAN_SUFFIX=1m ;;
*) ADMIN_MAN_SUFFIX=8 ;;
case $SYSV_MAN_SECTIONS in
true) ADMIN_MAN_SUFFIX=1m ;;
*) ADMIN_MAN_SUFFIX=8 ;;
esac
fi
if test x$ADMIN_MAN_DIR = x ; then
@ -10252,13 +10339,24 @@ m4_ifval([$1],
fi])
# Test for the ability of xmlto to generate a text target
#
# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the
# following test for empty XML docbook files.
# For compatibility reasons use the following empty XML docbook file and if
# it fails try it again with a non-empty XML file.
have_xmlto_text=no
cat > conftest.xml << "EOF"
EOF
AS_IF([test "$have_xmlto" = yes],
[AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
[have_xmlto_text=yes],
[AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])
[# Try it again with a non-empty XML file.
cat > conftest.xml << "EOF"
<x></x>
EOF
AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
[have_xmlto_text=yes],
[AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])])
rm -f conftest.xml
AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes])
AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
@ -11654,8 +11752,9 @@ AC_REQUIRE([PKG_PROG_PKG_CONFIG])
macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
|| (rm -f \$(top_srcdir)/.INSTALL.tmp; test -e \$(top_srcdir)/INSTALL || ( \
touch \$(top_srcdir)/INSTALL; \
echo 'failed to copy INSTALL from util-macros: installing empty INSTALL.' >&2))"
AC_SUBST([INSTALL_CMD])
]) # XORG_INSTALL
dnl Copyright 2005 Red Hat, Inc
@ -11716,10 +11815,11 @@ AC_DEFUN([XORG_RELEASE_VERSION],[
#
#
AC_DEFUN([XORG_CHANGELOG], [
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
CHANGELOG_CMD="((GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp) 2>/dev/null && \
mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
echo 'git directory not found: installing possibly empty changelog.' >&2)"
|| (rm -f \$(top_srcdir)/.changelog.tmp; test -e \$(top_srcdir)/ChangeLog || ( \
touch \$(top_srcdir)/ChangeLog; \
echo 'git failed to create ChangeLog: installing empty ChangeLog.' >&2))"
AC_SUBST([CHANGELOG_CMD])
]) # XORG_CHANGELOG
@ -11859,6 +11959,9 @@ AC_DEFUN([XTRANS_CONNECTION_FLAGS],[
AC_DEFINE(LOCALCONN,1,[Support os-specific local connections])
fi
# Other functions Xtrans may need
AC_CHECK_FUNCS([strcasecmp strlcpy])
]) # XTRANS_CONNECTION_FLAGS

View File

@ -3,7 +3,7 @@
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2013 Free Software Foundation, Inc.
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify

View File

@ -24,12 +24,18 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strlcpy' function. */
#undef HAVE_STRLCPY
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H

123
lib/libXmu/configure vendored
View File

@ -1,8 +1,8 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for libXmu 1.1.2.
# Generated by GNU Autoconf 2.69 for libXmu 1.1.3.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
# Report bugs to <https://gitlab.freedesktop.org/xorg/lib/libXmu/issues>.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@ -275,7 +275,7 @@ fi
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
$as_echo "$0: Please tell bug-autoconf@gnu.org and
$0: https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
$0: https://gitlab.freedesktop.org/xorg/lib/libXmu/issues
$0: about your system, including any error possibly output
$0: before this message. Then install a modern shell, or
$0: manually run the script under such a shell if you do
@ -651,9 +651,9 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='libXmu'
PACKAGE_TARNAME='libXmu'
PACKAGE_VERSION='1.1.2'
PACKAGE_STRING='libXmu 1.1.2'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
PACKAGE_VERSION='1.1.3'
PACKAGE_STRING='libXmu 1.1.3'
PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/lib/libXmu/issues'
PACKAGE_URL=''
ac_unique_file="Makefile.am"
@ -1451,7 +1451,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures libXmu 1.1.2 to adapt to many kinds of systems.
\`configure' configures libXmu 1.1.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1521,7 +1521,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of libXmu 1.1.2:";;
short | recursive ) echo "Configuration of libXmu 1.1.3:";;
esac
cat <<\_ACEOF
@ -1600,7 +1600,7 @@ Some influential environment variables:
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
Report bugs to <https://gitlab.freedesktop.org/xorg/lib/libXmu/issues>.
_ACEOF
ac_status=$?
fi
@ -1663,7 +1663,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
libXmu configure 1.1.2
libXmu configure 1.1.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -2098,7 +2098,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by libXmu $as_me 1.1.2, which was
It was created by libXmu $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -2927,7 +2927,7 @@ fi
# Define the identity of the package.
PACKAGE='libXmu'
VERSION='1.1.2'
VERSION='1.1.3'
cat >>confdefs.h <<_ACEOF
@ -17613,10 +17613,11 @@ _ACEOF
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
CHANGELOG_CMD="((GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp) 2>/dev/null && \
mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
echo 'git directory not found: installing possibly empty changelog.' >&2)"
|| (rm -f \$(top_srcdir)/.changelog.tmp; test -e \$(top_srcdir)/ChangeLog || ( \
touch \$(top_srcdir)/ChangeLog; \
echo 'git failed to create ChangeLog: installing empty ChangeLog.' >&2))"
@ -17624,14 +17625,45 @@ echo 'git directory not found: installing possibly empty changelog.' >&2)"
macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
|| (rm -f \$(top_srcdir)/.INSTALL.tmp; test -e \$(top_srcdir)/INSTALL || ( \
touch \$(top_srcdir)/INSTALL; \
echo 'failed to copy INSTALL from util-macros: installing empty INSTALL.' >&2))"
case $host_os in
solaris*)
# Solaris 2.0 - 11.3 use SysV man page section numbers, so we
# check for a man page file found in later versions that use
# traditional section numbers instead
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for /usr/share/man/man7/attributes.7" >&5
$as_echo_n "checking for /usr/share/man/man7/attributes.7... " >&6; }
if ${ac_cv_file__usr_share_man_man7_attributes_7+:} false; then :
$as_echo_n "(cached) " >&6
else
test "$cross_compiling" = yes &&
as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
if test -r "/usr/share/man/man7/attributes.7"; then
ac_cv_file__usr_share_man_man7_attributes_7=yes
else
ac_cv_file__usr_share_man_man7_attributes_7=no
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_file__usr_share_man_man7_attributes_7" >&5
$as_echo "$ac_cv_file__usr_share_man_man7_attributes_7" >&6; }
if test "x$ac_cv_file__usr_share_man_man7_attributes_7" = xyes; then :
SYSV_MAN_SECTIONS=false
else
SYSV_MAN_SECTIONS=true
fi
;;
*) SYSV_MAN_SECTIONS=false ;;
esac
if test x$APP_MAN_SUFFIX = x ; then
APP_MAN_SUFFIX=1
fi
@ -17647,9 +17679,9 @@ if test x$LIB_MAN_DIR = x ; then
fi
if test x$FILE_MAN_SUFFIX = x ; then
case $host_os in
solaris*) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
case $SYSV_MAN_SECTIONS in
true) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
esac
fi
if test x$FILE_MAN_DIR = x ; then
@ -17657,9 +17689,9 @@ if test x$FILE_MAN_DIR = x ; then
fi
if test x$MISC_MAN_SUFFIX = x ; then
case $host_os in
solaris*) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
case $SYSV_MAN_SECTIONS in
true) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
esac
fi
if test x$MISC_MAN_DIR = x ; then
@ -17667,9 +17699,9 @@ if test x$MISC_MAN_DIR = x ; then
fi
if test x$DRIVER_MAN_SUFFIX = x ; then
case $host_os in
solaris*) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
case $SYSV_MAN_SECTIONS in
true) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
esac
fi
if test x$DRIVER_MAN_DIR = x ; then
@ -17677,9 +17709,9 @@ if test x$DRIVER_MAN_DIR = x ; then
fi
if test x$ADMIN_MAN_SUFFIX = x ; then
case $host_os in
solaris*) ADMIN_MAN_SUFFIX=1m ;;
*) ADMIN_MAN_SUFFIX=8 ;;
case $SYSV_MAN_SECTIONS in
true) ADMIN_MAN_SUFFIX=1m ;;
*) ADMIN_MAN_SUFFIX=8 ;;
esac
fi
if test x$ADMIN_MAN_DIR = x ; then
@ -17927,17 +17959,30 @@ esac
fi
# Test for the ability of xmlto to generate a text target
#
# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the
# following test for empty XML docbook files.
# For compatibility reasons use the following empty XML docbook file and if
# it fails try it again with a non-empty XML file.
have_xmlto_text=no
cat > conftest.xml << "EOF"
EOF
if test "$have_xmlto" = yes; then :
if $XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1; then :
have_xmlto_text=yes
else
# Try it again with a non-empty XML file.
cat > conftest.xml << "EOF"
<x></x>
EOF
if $XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1; then :
have_xmlto_text=yes
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: xmlto cannot generate text format, this format skipped" >&5
$as_echo "$as_me: WARNING: xmlto cannot generate text format, this format skipped" >&2;}
fi
fi
fi
rm -f conftest.xml
if test $have_xmlto_text = yes; then
HAVE_XMLTO_TEXT_TRUE=
@ -18757,6 +18802,20 @@ $as_echo "#define LOCALCONN 1" >>confdefs.h
fi
# Other functions Xtrans may need
for ac_func in strcasecmp strlcpy
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
# Allow checking code with lint, sparse, etc.
@ -19462,7 +19521,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by libXmu $as_me 1.1.2, which was
This file was extended by libXmu $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -19522,13 +19581,13 @@ $config_headers
Configuration commands:
$config_commands
Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>."
Report bugs to <https://gitlab.freedesktop.org/xorg/lib/libXmu/issues>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
libXmu config.status 1.1.2
libXmu config.status 1.1.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

View File

@ -1,8 +1,8 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([libXmu], [1.1.2],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXmu])
AC_INIT([libXmu], [1.1.3],
[https://gitlab.freedesktop.org/xorg/lib/libXmu/issues], [libXmu])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])

View File

@ -54,14 +54,8 @@ struct _AtomRec {
DisplayRec* head;
};
#ifdef SUNSHLIB
#define STATIC
#else
#define STATIC static
#endif
#define DeclareAtom(atom,text) \
STATIC struct _AtomRec __##atom = { text, NULL }; \
static struct _AtomRec __##atom = { text, NULL }; \
AtomPtr _##atom = &__##atom;
DeclareAtom(XA_ATOM_PAIR, "ATOM_PAIR" )

View File

@ -62,8 +62,7 @@ libXmu_la_SOURCES = \
UpdMapHint.c \
VisCmap.c \
WidgetNode.c \
Xct.c \
sharedlib.c
Xct.c
if LINT

View File

@ -103,7 +103,7 @@ am_libXmu_la_OBJECTS = $(am__objects_1) AllCmap.lo Atoms.lo Clip.lo \
RdBitF.lo ScrOfWin.lo ShapeWidg.lo StdCmap.lo StrToBS.lo \
StrToBmap.lo StrToCurs.lo StrToGrav.lo StrToJust.lo \
StrToLong.lo StrToOrnt.lo StrToShap.lo StrToWidg.lo \
UpdMapHint.lo VisCmap.lo WidgetNode.lo Xct.lo sharedlib.lo
UpdMapHint.lo VisCmap.lo WidgetNode.lo Xct.lo
libXmu_la_OBJECTS = $(am_libXmu_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@ -374,8 +374,7 @@ libXmu_la_SOURCES = \
UpdMapHint.c \
VisCmap.c \
WidgetNode.c \
Xct.c \
sharedlib.c
Xct.c
@LINT_TRUE@ALL_LINT_FLAGS = $(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@LINT_TRUE@ $(AM_CPPFLAGS) $(CPPFLAGS)
@ -505,7 +504,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VisCmap.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/WidgetNode.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Xct.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sharedlib.Plo@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<

View File

@ -56,6 +56,7 @@ in this Software without prior written authorization from The Open Group.
#include <X11/Xmu/Drawing.h>
#ifdef WIN32
#include <X11/Xwindows.h>
#include <direct.h> /* for _getdrives() */
#endif
#define MAX_SIZE 255

View File

@ -201,7 +201,7 @@ ShapeEllipseOrRoundedRectangle(Widget w, Bool ellipse, int ew, int eh)
GC gc;
unsigned long mask;
if (width < 3 || width < 3)
if (width < 3 || height < 3)
return;
width += w->core.border_width << 1;
height += w->core.border_width << 1;

View File

@ -58,8 +58,8 @@ SOFTWARE.
#include <X11/Xmu/CurUtil.h>
#include <X11/Xmu/CharSet.h>
#ifndef X_NOT_POSIX
#include <stdlib.h>
#ifdef _POSIX_SOURCE
#include <limits.h>
#else
@ -67,7 +67,7 @@ SOFTWARE.
#include <limits.h>
#undef _POSIX_SOURCE
#endif
#endif /* X_NOT_POSIX */
#ifndef PATH_MAX
#ifdef WIN32
#define PATH_MAX 512
@ -88,7 +88,7 @@ SOFTWARE.
and broken object file formats that don't correctly distinguish
references to procedures from references to data.
*/
#if defined(SUNSHLIB) || defined(SVR4)
#if defined(SVR4)
#define XMU_KLUDGE
#endif

View File

@ -53,63 +53,60 @@ in this Software without prior written authorization from The Open Group.
/*ARGSUSED*/
void
XmuCvtStringToWidget(XrmValuePtr args, Cardinal *num_args,
XrmValuePtr fromVal, XrmValuePtr toVal)
XrmValuePtr fromVal, XrmValuePtr toVal)
{
static Widget widget, *widgetP, parent;
XrmName name = XrmStringToName(fromVal->addr);
Cardinal i;
if (*num_args != 1)
{
i = 0;
XtErrorMsg("wrongParameters", "cvtStringToWidget", "xtToolkitError",
"StringToWidget conversion needs parent arg", NULL, &i);
if (*num_args != 1) {
i = 0;
XtErrorMsg("wrongParameters", "cvtStringToWidget", "xtToolkitError",
"StringToWidget conversion needs parent arg", NULL, &i);
}
parent = *(Widget*)args[0].addr;
parent = *(Widget *) args[0].addr;
/* try to match names of normal children */
if (XtIsComposite(parent))
{
i = ((CompositeWidget)parent)->composite.num_children;
for (widgetP = ((CompositeWidget)parent)->composite.children;
i; i--, widgetP++)
if ((*widgetP)->core.xrm_name == name)
{
widget = *widgetP;
done(&widget, Widget);
}
}
if (XtIsComposite(parent)) {
i = ((CompositeWidget) parent)->composite.num_children;
for (widgetP = ((CompositeWidget) parent)->composite.children;
i; i--, widgetP++) {
if ((*widgetP)->core.xrm_name == name) {
widget = *widgetP;
done(&widget, Widget);
}
}
}
/* try to match names of popup children */
i = parent->core.num_popups;
for (widgetP = parent->core.popup_list; i; i--, widgetP++)
if ((*widgetP)->core.xrm_name == name)
{
widget = *widgetP;
done(&widget, Widget);
}
for (widgetP = parent->core.popup_list; i; i--, widgetP++) {
if ((*widgetP)->core.xrm_name == name) {
widget = *widgetP;
done(&widget, Widget);
}
}
/* try to match classes of normal children */
if (XtIsComposite(parent))
{
i = ((CompositeWidget)parent)->composite.num_children;
for (widgetP = ((CompositeWidget)parent)->composite.children;
i; i--, widgetP++)
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
{
widget = *widgetP;
done(&widget, Widget);
}
}
if (XtIsComposite(parent)) {
i = ((CompositeWidget) parent)->composite.num_children;
for (widgetP = ((CompositeWidget) parent)->composite.children;
i; i--, widgetP++) {
if ((*widgetP)->core.widget_class->core_class.xrm_class == name) {
widget = *widgetP;
done(&widget, Widget);
}
}
}
/* try to match classes of popup children */
i = parent->core.num_popups;
for (widgetP = parent->core.popup_list; i; i--, widgetP++)
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
{
widget = *widgetP;
done(&widget, Widget);
}
for (widgetP = parent->core.popup_list; i; i--, widgetP++) {
if ((*widgetP)->core.widget_class->core_class.xrm_class == name) {
widget = *widgetP;
done(&widget, Widget);
}
}
XtStringConversionWarning(fromVal->addr, XtRWidget);
toVal->addr = NULL;
@ -118,108 +115,109 @@ XmuCvtStringToWidget(XrmValuePtr args, Cardinal *num_args,
#undef done
#define newDone(type, value) \
{ \
if (toVal->addr != NULL) { \
if (toVal->size < sizeof(type)) { \
toVal->size = sizeof(type); \
return False; \
} \
*(type*)(toVal->addr) = (value); \
} \
else { \
static type static_val; \
static_val = (value); \
toVal->addr = (XtPointer)&static_val; \
} \
toVal->size = sizeof(type); \
return True; \
}
#define newDone(type, value) \
{ \
if (toVal->addr != NULL) { \
if (toVal->size < sizeof(type)) { \
toVal->size = sizeof(type); \
return False; \
} \
*(type*)(toVal->addr) = (value); \
} \
else { \
static type static_val; \
static_val = (value); \
toVal->addr = (XtPointer)&static_val; \
} \
toVal->size = sizeof(type); \
return True; \
}
/*ARGSUSED*/
Boolean
XmuNewCvtStringToWidget(Display *dpy, XrmValue *args, Cardinal *num_args,
XrmValue *fromVal, XrmValue *toVal,
XtPointer *converter_data)
XrmValue *fromVal, XrmValue *toVal,
XtPointer *converter_data)
{
Widget *widgetP, parent;
XrmName name = XrmStringToName(fromVal->addr);
int i;
if (*num_args != 1)
XtAppWarningMsg(XtDisplayToApplicationContext(dpy),
"wrongParameters","cvtStringToWidget","xtToolkitError",
"String To Widget conversion needs parent argument",
(String *)NULL, (Cardinal *)NULL);
XtAppWarningMsg(XtDisplayToApplicationContext(dpy),
"wrongParameters", "cvtStringToWidget",
"xtToolkitError",
"String To Widget conversion needs parent argument",
(String *) NULL, (Cardinal *) NULL);
parent = *(Widget*)args[0].addr;
parent = *(Widget *) args[0].addr;
/* try to match names of normal children */
if (XtIsComposite(parent))
{
i = ((CompositeWidget)parent)->composite.num_children;
for (widgetP = ((CompositeWidget)parent)->composite.children;
i; i--, widgetP++)
if ((*widgetP)->core.xrm_name == name)
newDone(Widget, *widgetP);
}
if (XtIsComposite(parent)) {
i = ((CompositeWidget) parent)->composite.num_children;
for (widgetP = ((CompositeWidget) parent)->composite.children;
i; i--, widgetP++) {
if ((*widgetP)->core.xrm_name == name)
newDone(Widget, *widgetP);
}
}
/* try to match names of popup children */
i = parent->core.num_popups;
for (widgetP = parent->core.popup_list; i; i--, widgetP++)
if ((*widgetP)->core.xrm_name == name)
newDone(Widget, *widgetP);
for (widgetP = parent->core.popup_list; i; i--, widgetP++) {
if ((*widgetP)->core.xrm_name == name)
newDone(Widget, *widgetP);
}
/* try to match classes of normal children */
if (XtIsComposite(parent))
{
i = ((CompositeWidget)parent)->composite.num_children;
for (widgetP = ((CompositeWidget)parent)->composite.children;
i; i--, widgetP++)
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
newDone(Widget, *widgetP);
}
if (XtIsComposite(parent)) {
i = ((CompositeWidget) parent)->composite.num_children;
for (widgetP = ((CompositeWidget) parent)->composite.children;
i; i--, widgetP++) {
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
newDone(Widget, *widgetP);
}
}
/* try to match classes of popup children */
i = parent->core.num_popups;
for (widgetP = parent->core.popup_list; i; i--, widgetP++)
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
newDone(Widget, *widgetP);
for (widgetP = parent->core.popup_list; i; i--, widgetP++) {
if ((*widgetP)->core.widget_class->core_class.xrm_class == name)
newDone(Widget, *widgetP);
}
XtDisplayStringConversionWarning(dpy, (String)fromVal->addr, XtRWidget);
return (False);
XtDisplayStringConversionWarning(dpy, (String) fromVal->addr, XtRWidget);
return (False);
}
/*ARGSUSED*/
Boolean
XmuCvtWidgetToString(Display *dpy, XrmValuePtr args, Cardinal *num_args,
XrmValuePtr fromVal, XrmValuePtr toVal,
XtPointer *data)
XrmValuePtr fromVal, XrmValuePtr toVal, XtPointer *data)
{
static String buffer;
Cardinal size;
Widget widget;
static String buffer;
Cardinal size;
Widget widget;
widget = *(Widget *)fromVal->addr;
widget = *(Widget *) fromVal->addr;
if (widget)
buffer = XrmQuarkToString(widget->core.xrm_name);
else
buffer = "(null)";
if (widget)
buffer = XrmQuarkToString(widget->core.xrm_name);
else
buffer = "(null)";
size = strlen(buffer) + 1;
if (toVal->addr != NULL)
{
if (toVal->size < size)
{
toVal->size = size;
return (False);
}
strcpy((char *)toVal->addr, buffer);
size = strlen(buffer) + 1;
if (toVal->addr != NULL) {
if (toVal->size < size) {
toVal->size = size;
return (False);
}
strcpy((char *) toVal->addr, buffer);
}
else
toVal->addr = (XPointer)buffer;
toVal->size = sizeof(String);
else {
toVal->addr = (XPointer) buffer;
}
toVal->size = sizeof(String);
return (True);
return (True);
}