author | X gate hg captive account <xhg@xserver.us.oracle.com> |
Wed, 19 Aug 2015 13:48:41 -0700 | |
changeset 1484 | bc8922b8e1d2 |
parent 1422 | e9cadc0026d8 |
permissions | -rw-r--r-- |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
1 |
diff --git a/configure.ac b/configure.ac |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
2 |
index d15b326..28185fe 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
3 |
--- a/configure.ac |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
4 |
+++ b/configure.ac |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
5 |
@@ -72,6 +72,7 @@ AC_SUBST(LDFLAGS_FOR_BUILD) |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
6 |
|
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
7 |
# Map function checks to old Imake #defines |
946
c4381a29a60a
6949653 Mass minor update to X.Org upstream release [April 2010 edition]
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
761
diff
changeset
|
8 |
case $host_os in |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
9 |
+ solaris*) ;; # our changes to NextEvent.c break if poll() is used |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
10 |
# darwin through Snow Leopard has poll() but can't be used to poll character devices. |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
11 |
darwin@<:@789@:>@*|darwin10*) ;; |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
12 |
darwin*) |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
13 |
diff --git a/include/X11/Intrinsic.h b/include/X11/Intrinsic.h |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
14 |
index d09acad..d30e01f 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
15 |
--- a/include/X11/Intrinsic.h |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
16 |
+++ b/include/X11/Intrinsic.h |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
17 |
@@ -125,6 +125,7 @@ typedef int XtCacheType; |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
18 |
#define XtCacheAll 0x002 |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
19 |
#define XtCacheByDisplay 0x003 |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
20 |
#define XtCacheRefCount 0x100 |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
21 |
+#define XtCacheXmRefCount 0x200 |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
22 |
|
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
23 |
/**************************************************************** |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
24 |
* |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
25 |
@@ -253,6 +254,8 @@ typedef void (*XtDestructor)( |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
26 |
Cardinal* /* num_args */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
27 |
); |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
28 |
|
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
29 |
+typedef XtPointer (*XtReplicator)(XtPointer); |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
30 |
+ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
31 |
typedef Opaque XtCacheRef; |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
32 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
33 |
typedef Opaque XtActionHookId; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
34 |
@@ -656,6 +659,17 @@ extern void XtSetTypeConverter( |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
35 |
XtDestructor /* destructor */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
36 |
); |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
37 |
|
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
38 |
+extern void _XtSetTypeConverter( |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
39 |
+ _Xconst _XtString /* from_type */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
40 |
+ _Xconst _XtString /* to_type */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
41 |
+ XtTypeConverter /* converter */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
42 |
+ XtConvertArgList /* convert_args */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
43 |
+ Cardinal /* num_args */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
44 |
+ XtCacheType /* cache_type */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
45 |
+ XtDestructor /* destructor */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
46 |
+ XtReplicator /* replicator */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
47 |
+); |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
48 |
+ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
49 |
extern void XtAppSetTypeConverter( |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
50 |
XtAppContext /* app_context */, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
51 |
_Xconst _XtString /* from_type */, |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
52 |
diff --git a/src/Convert.c b/src/Convert.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
53 |
index cea8fd3..265b162 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
54 |
--- a/src/Convert.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
55 |
+++ b/src/Convert.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
56 |
@@ -87,6 +87,7 @@ typedef struct _ConverterRec { |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
57 |
XrmRepresentation from, to; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
58 |
XtTypeConverter converter; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
59 |
XtDestructor destructor; |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
60 |
+ XtReplicator replicator; |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
61 |
unsigned short num_args; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
62 |
unsigned int do_ref_count:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
63 |
unsigned int new_style:1; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
64 |
@@ -94,11 +95,25 @@ typedef struct _ConverterRec { |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
65 |
char cache_type; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
66 |
} ConverterRec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
67 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
68 |
-#define ConvertArgs(p) ((XtConvertArgList)((p)+1)) |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
69 |
+#define ConvertArgs(p) ((XtConvertArgList)((p)+(ptrdiff_t)1)) |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
70 |
|
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
71 |
/* used for old-style type converter cache only */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
72 |
static Heap globalHeap = {NULL, NULL, 0}; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
73 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
74 |
+static |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
75 |
+void TableAddConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
76 |
+ ConverterTable table, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
77 |
+ XrmRepresentation from_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
78 |
+ XrmRepresentation to_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
79 |
+ XtTypeConverter converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
80 |
+ XtConvertArgList convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
81 |
+ Cardinal num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
82 |
+ _XtBoolean new_style, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
83 |
+ XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
84 |
+ XtDestructor destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
85 |
+ XtReplicator replicator, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
86 |
+ _XtBoolean global); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
87 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
88 |
void _XtSetDefaultConverterTable( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
89 |
ConverterTable *table) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
90 |
{ |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
91 |
@@ -117,13 +132,11 @@ void _XtSetDefaultConverterTable( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
92 |
XtCacheType cache_type; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
93 |
for (i = CONVERTHASHSIZE; --i >= 0; ) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
94 |
for (rec = *globalConverterTable++; rec; rec = rec->next) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
95 |
- cache_type = rec->cache_type; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
96 |
- if (rec->do_ref_count) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
97 |
- cache_type |= XtCacheRefCount; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
98 |
- _XtTableAddConverter(*table, rec->from, rec->to, rec->converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
99 |
+ cache_type = rec->cache_type | (rec->do_ref_count & 0xff00); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
100 |
+ TableAddConverter(*table, rec->from, rec->to, rec->converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
101 |
ConvertArgs(rec), rec->num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
102 |
rec->new_style, cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
103 |
- rec->destructor, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
104 |
+ rec->destructor, rec->replicator, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
105 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
106 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
107 |
} |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
108 |
@@ -155,10 +168,14 @@ typedef struct _CacheRec { |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
109 |
XtPointer tag; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
110 |
int hash; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
111 |
XtTypeConverter converter; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
112 |
+ XtDestructor destructor; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
113 |
+ XtReplicator replicator; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
114 |
+ XtPointer closure; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
115 |
unsigned short num_args; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
116 |
unsigned int conversion_succeeded:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
117 |
unsigned int has_ext:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
118 |
unsigned int is_refcounted:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
119 |
+ unsigned int ref_count; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
120 |
unsigned int must_be_freed:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
121 |
unsigned int from_is_value:1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
122 |
unsigned int to_is_value:1; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
123 |
@@ -166,15 +183,7 @@ typedef struct _CacheRec { |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
124 |
XrmValue to; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
125 |
} CacheRec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
126 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
127 |
-typedef struct _CacheRecExt { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
128 |
- CachePtr *prev; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
129 |
- XtDestructor destructor; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
130 |
- XtPointer closure; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
131 |
- long ref_count; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
132 |
-} CacheRecExt; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
133 |
- |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
134 |
-#define CEXT(p) ((CacheRecExt *)((p)+1)) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
135 |
-#define CARGS(p) ((p)->has_ext ? (XrmValue *)(CEXT(p)+1) : (XrmValue *)((p)+1)) |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
136 |
+#define CARGS(p) (XrmValue *)((p)+(ptrdiff_t)1) |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
137 |
|
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
138 |
#define CACHEHASHSIZE 256 |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
139 |
#define CACHEHASHMASK 255 |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
140 |
@@ -183,6 +192,28 @@ typedef CachePtr CacheHashTable[CACHEHASHSIZE]; |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
141 |
static CacheHashTable cacheHashTable; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
142 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
143 |
void _XtTableAddConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
144 |
+ ConverterTable table, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
145 |
+ XrmRepresentation from_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
146 |
+ XrmRepresentation to_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
147 |
+ XtTypeConverter converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
148 |
+ XtConvertArgList convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
149 |
+ Cardinal num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
150 |
+ _XtBoolean new_style, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
151 |
+ XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
152 |
+ XtDestructor destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
153 |
+ _XtBoolean global) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
154 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
155 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
156 |
+ unsigned short cache_flags; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
157 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
158 |
+ cache_flags = cache_type & (XtCacheNone | XtCacheAll | |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
159 |
+ XtCacheByDisplay | XtCacheRefCount); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
160 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
161 |
+ TableAddConverter(table, from_type, to_type, converter, convert_args, num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
162 |
+ new_style, cache_type, destructor, 0, global); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
163 |
+} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
164 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
165 |
+void TableAddConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
166 |
ConverterTable table, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
167 |
XrmRepresentation from_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
168 |
XrmRepresentation to_type, |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
169 |
@@ -192,6 +223,7 @@ void _XtTableAddConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
170 |
_XtBoolean new_style, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
171 |
XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
172 |
XtDestructor destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
173 |
+ XtReplicator replicator, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
174 |
_XtBoolean global) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
175 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
176 |
register ConverterPtr *pp; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
177 |
@@ -215,6 +247,7 @@ void _XtTableAddConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
178 |
p->to = to_type; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
179 |
p->converter = converter; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
180 |
p->destructor = destructor; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
181 |
+ p->replicator = replicator; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
182 |
p->num_args = num_args; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
183 |
p->global = global; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
184 |
args = ConvertArgs(p); |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
185 |
@@ -224,21 +257,21 @@ void _XtTableAddConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
186 |
p->do_ref_count = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
187 |
if (destructor || (cache_type & 0xff)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
188 |
p->cache_type = cache_type & 0xff; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
189 |
- if (cache_type & XtCacheRefCount) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
190 |
- p->do_ref_count = True; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
191 |
+ p->do_ref_count = cache_type & 0xff00; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
192 |
} else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
193 |
p->cache_type = XtCacheNone; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
194 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
195 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
196 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
197 |
-void XtSetTypeConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
198 |
+void _XtSetTypeConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
199 |
register _Xconst char* from_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
200 |
register _Xconst char* to_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
201 |
- XtTypeConverter converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
202 |
+ XtTypeConverter converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
203 |
XtConvertArgList convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
204 |
- Cardinal num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
205 |
- XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
206 |
- XtDestructor destructor |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
207 |
+ Cardinal num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
208 |
+ XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
209 |
+ XtDestructor destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
210 |
+ XtReplicator replicator |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
211 |
) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
212 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
213 |
ProcessContext process; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
214 |
@@ -253,21 +286,41 @@ void XtSetTypeConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
215 |
to = XrmStringToRepresentation(to_type); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
216 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
217 |
if (!process->globalConverterTable) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
218 |
- process->globalConverterTable = (ConverterTable) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
219 |
- __XtCalloc(CONVERTHASHSIZE, (unsigned)sizeof(ConverterPtr)); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
220 |
+ process->globalConverterTable = (ConverterTable) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
221 |
+ __XtCalloc(CONVERTHASHSIZE, (unsigned)sizeof(ConverterPtr)); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
222 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
223 |
- _XtTableAddConverter(process->globalConverterTable, from, to, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
224 |
- converter, convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
225 |
- num_args, True, cache_type, destructor, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
226 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
227 |
+ TableAddConverter(process->globalConverterTable, from, to, converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
228 |
+ convert_args, num_args, True, cache_type, destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
229 |
+ replicator, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
230 |
while (app) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
231 |
- _XtTableAddConverter(app->converterTable, from, to, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
232 |
- converter, convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
233 |
- num_args, True, cache_type, destructor, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
234 |
+ TableAddConverter(app->converterTable, from, to, converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
235 |
+ convert_args, num_args, True, cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
236 |
+ destructor, replicator, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
237 |
app = app->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
238 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
239 |
UNLOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
240 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
241 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
242 |
+void XtSetTypeConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
243 |
+ register _Xconst char* from_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
244 |
+ register _Xconst char* to_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
245 |
+ XtTypeConverter converter, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
246 |
+ XtConvertArgList convert_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
247 |
+ Cardinal num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
248 |
+ XtCacheType cache_type, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
249 |
+ XtDestructor destructor |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
250 |
+ ) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
251 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
252 |
+ unsigned short cache_flags; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
253 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
254 |
+ cache_flags = cache_type & (XtCacheNone | XtCacheAll | |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
255 |
+ XtCacheByDisplay | XtCacheRefCount); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
256 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
257 |
+ _XtSetTypeConverter(from_type, to_type, converter, convert_args, num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
258 |
+ cache_flags, destructor, 0); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
259 |
+} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
260 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
261 |
void XtAppSetTypeConverter( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
262 |
XtAppContext app, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
263 |
register _Xconst char* from_type, |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
264 |
@@ -357,6 +410,7 @@ CacheEnter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
265 |
Boolean do_ref, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
266 |
Boolean do_free, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
267 |
XtDestructor destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
268 |
+ XtReplicator replicator, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
269 |
XtPointer closure) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
270 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
271 |
register CachePtr *pHashEntry; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
272 |
@@ -366,34 +420,22 @@ CacheEnter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
273 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
274 |
pHashEntry = &cacheHashTable[hash & CACHEHASHMASK]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
275 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
276 |
- if ((succeeded && destructor) || do_ref) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
277 |
- p = (CachePtr) _XtHeapAlloc(heap, (sizeof(CacheRec) + |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
278 |
- sizeof(CacheRecExt) + |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
279 |
- num_args * sizeof(XrmValue))); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
280 |
- CEXT(p)->prev = pHashEntry; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
281 |
- CEXT(p)->destructor = succeeded ? destructor : NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
282 |
- CEXT(p)->closure = closure; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
283 |
- CEXT(p)->ref_count = 1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
284 |
- p->has_ext = True; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
285 |
- } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
286 |
- else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
287 |
- p = (CachePtr)_XtHeapAlloc(heap, (sizeof(CacheRec) + |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
288 |
- num_args * sizeof(XrmValue))); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
289 |
- p->has_ext = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
290 |
- } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
291 |
+ p = (CachePtr)_XtHeapAlloc(heap, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
292 |
+ (sizeof(CacheRec) + num_args * sizeof(XrmValue))); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
293 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
294 |
if (!to->addr) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
295 |
succeeded = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
296 |
p->conversion_succeeded = succeeded; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
297 |
p->is_refcounted = do_ref; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
298 |
p->must_be_freed = do_free; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
299 |
p->next = *pHashEntry; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
300 |
- if (p->next && p->next->has_ext) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
301 |
- CEXT(p->next)->prev = &p->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
302 |
- |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
303 |
*pHashEntry = p; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
304 |
p->tag = (XtPointer)heap; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
305 |
p->hash = hash; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
306 |
p->converter = converter; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
307 |
+ p->destructor = destructor; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
308 |
+ p->replicator = replicator; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
309 |
+ p->closure = closure; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
310 |
p->from.size = from->size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
311 |
if (from->size <= sizeof(p->from.addr)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
312 |
p->from_is_value = True; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
313 |
@@ -416,14 +458,31 @@ CacheEnter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
314 |
if (!succeeded) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
315 |
p->to_is_value = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
316 |
p->to.addr = NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
317 |
- } else if (to->size <= sizeof(p->to.addr)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
318 |
- p->to_is_value = True; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
319 |
- XtMemmove(&p->to.addr, to->addr, to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
320 |
} else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
321 |
- p->to_is_value = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
322 |
- p->to.addr = (XPointer)_XtHeapAlloc(heap, to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
323 |
- (void) memmove((char *)p->to.addr, (char *)to->addr, to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
324 |
+ XPointer src_ptr, dest_ptr, gptr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
325 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
326 |
+ if ((size_t)to->size <= sizeof(p->to.addr)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
327 |
+ p->to_is_value = True; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
328 |
+ dest_ptr = (XPointer)&p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
329 |
+ } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
330 |
+ p->to_is_value = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
331 |
+ dest_ptr = p->to.addr = (XPointer)_XtHeapAlloc(heap, to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
332 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
333 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
334 |
+ if (do_ref & XtCacheXmRefCount) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
335 |
+ gptr = (*(p->replicator))(*(XtPointer *)(to->addr)); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
336 |
+ src_ptr = (XtPointer)&gptr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
337 |
+ } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
338 |
+ src_ptr = to->addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
339 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
340 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
341 |
+ memmove(dest_ptr, src_ptr, to->size); |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
342 |
+ } |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
343 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
344 |
+ if ((succeeded && destructor) || do_ref) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
345 |
+ p->ref_count = 1; |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
346 |
} |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
347 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
348 |
UNLOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
349 |
return p; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
350 |
} |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
351 |
@@ -431,32 +490,39 @@ CacheEnter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
352 |
static void FreeCacheRec( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
353 |
XtAppContext app, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
354 |
CachePtr p, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
355 |
- CachePtr *prev) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
356 |
+ Boolean clean_table) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
357 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
358 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
359 |
- if (p->has_ext) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
360 |
- if (CEXT(p)->destructor) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
361 |
- Cardinal num_args = p->num_args; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
362 |
- XrmValue *args = NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
363 |
- XrmValue toc; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
364 |
- if (num_args) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
365 |
- args = CARGS(p); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
366 |
- toc.size = p->to.size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
367 |
- if (p->to_is_value) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
368 |
- toc.addr = (XPointer)&p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
369 |
- else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
370 |
- toc.addr = p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
371 |
- (*CEXT(p)->destructor) (app, &toc, CEXT(p)->closure, args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
372 |
- &num_args); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
373 |
- } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
374 |
- *(CEXT(p)->prev) = p->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
375 |
- if (p->next && p->next->has_ext) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
376 |
- CEXT(p->next)->prev = CEXT(p)->prev; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
377 |
- } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
378 |
- *prev = p->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
379 |
- if (p->next && p->next->has_ext) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
380 |
- CEXT(p->next)->prev = prev; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
381 |
+ if (clean_table) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
382 |
+ CachePtr cachep, *cachepp; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
383 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
384 |
+ cachepp = &cacheHashTable[p->hash & CACHEHASHMASK]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
385 |
+ while (cachep = *cachepp) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
386 |
+ if (p == cachep) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
387 |
+ *cachepp = cachep->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
388 |
+ break; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
389 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
390 |
+ cachepp = &cachep->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
391 |
+ } |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
392 |
+ } |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
393 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
394 |
+ if (p->destructor) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
395 |
+ Cardinal num_args=p->num_args; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
396 |
+ XrmValue *args=NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
397 |
+ XrmValue toc; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
398 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
399 |
+ if (num_args) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
400 |
+ args = CARGS(p); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
401 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
402 |
+ toc.size = p->to.size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
403 |
+ if (p->to_is_value) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
404 |
+ toc.addr = (XPointer)&p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
405 |
+ } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
406 |
+ toc.addr = p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
407 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
408 |
+ (*p->destructor)(app, &toc, p->closure, args, &num_args); |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
409 |
} |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
410 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
411 |
if (p->must_be_freed) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
412 |
register int i; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
413 |
if (!p->from_is_value) |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
414 |
@@ -480,18 +546,18 @@ void _XtCacheFlushTag( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
415 |
XtPointer tag) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
416 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
417 |
int i; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
418 |
- register CachePtr *prev; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
419 |
register CachePtr rec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
420 |
+ register CachePtr *next_link; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
421 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
422 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
423 |
for (i = CACHEHASHSIZE; --i >= 0;) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
424 |
- prev = &cacheHashTable[i]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
425 |
- while ((rec = *prev)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
426 |
+ next_link = &cacheHashTable[i]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
427 |
+ while ((rec = *next_link)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
428 |
+ next_link = &rec->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
429 |
if (rec->tag == tag) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
430 |
- FreeCacheRec(app, rec, prev); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
431 |
- else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
432 |
- prev = &rec->next; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
433 |
+ FreeCacheRec(app, rec, False); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
434 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
435 |
+ cacheHashTable[i] = 0; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
436 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
437 |
UNLOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
438 |
} |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
439 |
@@ -641,7 +707,12 @@ void XtDirectConvert( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
440 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
441 |
/* Try to find cache entry for conversion */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
442 |
hash = ((long) converter >> 2) + from->size + *((char *) from->addr); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
443 |
- if (from->size > 1) hash += ((char *) from->addr)[1]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
444 |
+ if (from->size > 1) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
445 |
+ if (sizeof(long) == 4) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
446 |
+ hash += ((char *) from->addr)[1]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
447 |
+ else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
448 |
+ hash += ((char *) from->addr)[6]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
449 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
450 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
451 |
for (p = cacheHashTable[hash & CACHEHASHMASK]; p; p = p->next) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
452 |
if ((p->hash == hash) |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
453 |
@@ -685,7 +756,7 @@ void XtDirectConvert( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
454 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
455 |
CacheEnter(&globalHeap, (XtTypeConverter)converter, args, num_args, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
456 |
from, to, (to->addr != NULL), hash, False, False, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
457 |
- (XtDestructor)NULL, NULL); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
458 |
+ (XtDestructor)NULL, NULL, 0); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
459 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
460 |
UNLOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
461 |
} |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
462 |
@@ -726,6 +797,7 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
463 |
int hash; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
464 |
Cardinal i; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
465 |
Boolean retval; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
466 |
+ XPointer from_addr, gptr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
467 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
468 |
if (!cP || ((cP->cache_type == XtCacheNone) && !cP->destructor)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
469 |
XtPointer closure; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
470 |
@@ -738,7 +810,12 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
471 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
472 |
/* Try to find cache entry for conversion */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
473 |
hash = ((long)(converter) >> 2) + from->size + *((char *) from->addr); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
474 |
- if (from->size > 1) hash += ((char *) from->addr)[1]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
475 |
+ if (from->size > 1) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
476 |
+ if (sizeof(long) == 4) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
477 |
+ hash += ((char *) from->addr)[1]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
478 |
+ else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
479 |
+ hash += ((char *) from->addr)[6]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
480 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
481 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
482 |
if (cP->cache_type != XtCacheNone) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
483 |
for (p = cacheHashTable[hash & CACHEHASHMASK]; p; p = p->next){ |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
484 |
@@ -770,14 +847,18 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
485 |
UNLOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
486 |
return False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
487 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
488 |
- to->size = p->to.size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
489 |
- if (p->to_is_value) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
490 |
- XtMemmove(to->addr, &p->to.addr, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
491 |
- to->size); |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
492 |
+ if (cP->do_ref_count & XtCacheXmRefCount) { |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
493 |
+ gptr = (*(p->replicator))(p->to.addr); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
494 |
+ from_addr = (XPointer)&gptr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
495 |
+ } else if (p->to_is_value) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
496 |
+ from_addr = (XPointer)&p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
497 |
} else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
498 |
- (void) memmove((char *)to->addr, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
499 |
- (char *)p->to.addr, to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
500 |
+ from_addr = p->to.addr; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
501 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
502 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
503 |
+ to->size = p->to.size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
504 |
+ memmove((char *)to->addr, from_addr, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
505 |
+ to->size); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
506 |
} else { /* old-style call */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
507 |
to->size = p->to.size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
508 |
if (p->to_is_value) |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
509 |
@@ -787,7 +868,7 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
510 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
511 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
512 |
if (p->is_refcounted) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
513 |
- CEXT(p)->ref_count++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
514 |
+ p->ref_count++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
515 |
if (cache_ref_return) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
516 |
*cache_ref_return = (XtCacheRef)p; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
517 |
else |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
518 |
@@ -810,7 +891,7 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
519 |
Heap *heap; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
520 |
XtPointer closure = NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
521 |
unsigned int supplied_size = to->size; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
522 |
- Boolean do_ref = cP->do_ref_count && cache_ref_return; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
523 |
+ unsigned short do_ref; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
524 |
Boolean do_free = False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
525 |
Boolean retval = |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
526 |
(*(XtTypeConverter)converter)(dpy, args, &num_args, from, to, &closure); |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
527 |
@@ -823,6 +904,8 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
528 |
return False; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
529 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
530 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
531 |
+ do_ref = cache_ref_return ? cP->do_ref_count : 0; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
532 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
533 |
if ((cP->cache_type == XtCacheNone) || do_ref) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
534 |
heap = NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
535 |
do_free = True; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
536 |
@@ -834,8 +917,12 @@ CallConverter( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
537 |
else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
538 |
heap = &XtDisplayToApplicationContext(dpy)->heap; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
539 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
540 |
- p = CacheEnter(heap, converter, args, num_args, from, to, retval, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
541 |
- hash, do_ref, do_free, cP->destructor, closure); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
542 |
+ if (do_ref || !(cP->do_ref_count & XtCacheXmRefCount)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
543 |
+ p = CacheEnter(heap, converter, args, num_args, from, to, retval, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
544 |
+ hash, do_ref, do_free, cP->destructor, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
545 |
+ cP->replicator, closure); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
546 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
547 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
548 |
if (do_ref) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
549 |
*cache_ref_return = (XtCacheRef)p; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
550 |
else if (cache_ref_return) |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
551 |
@@ -1061,8 +1148,8 @@ void XtAppReleaseCacheRefs( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
552 |
LOCK_APP(app); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
553 |
LOCK_PROCESS; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
554 |
for (r = (CachePtr*)refs; (p = *r); r++) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
555 |
- if (p->is_refcounted && --(CEXT(p)->ref_count) == 0) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
556 |
- FreeCacheRec(app, p, NULL); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
557 |
+ if (p->is_refcounted && (--p->ref_count) == 0) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
558 |
+ FreeCacheRec(app, p, True); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
559 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
560 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
561 |
UNLOCK_PROCESS; |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
562 |
@@ -1078,7 +1165,6 @@ void XtCallbackReleaseCacheRefList( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
563 |
{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
564 |
XtAppReleaseCacheRefs( XtWidgetToApplicationContext(widget), |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
565 |
(XtCacheRef*)closure ); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
566 |
- XtFree(closure); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
567 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
568 |
|
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
569 |
|
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
570 |
diff --git a/src/Create.c b/src/Create.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
571 |
index da00192..b756223 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
572 |
--- a/src/Create.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
573 |
+++ b/src/Create.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
574 |
@@ -405,8 +405,7 @@ xtCreate( |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
575 |
CompileCallbacks(widget); |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
576 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
577 |
if (cache_refs != NULL) { |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
578 |
- XtAddCallback(widget, XtNdestroyCallback, |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
579 |
- XtCallbackReleaseCacheRefList, (XtPointer)cache_refs ); |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
580 |
+ XtFree(cache_refs); |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
581 |
} |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
582 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
583 |
wsize = widget_class->core_class.widget_size; |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
584 |
diff --git a/src/Display.c b/src/Display.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
585 |
index 4ccf079..72ed668 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
586 |
--- a/src/Display.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
587 |
+++ b/src/Display.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
588 |
@@ -323,12 +323,15 @@ _XtAppInit( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
589 |
* Save away argv and argc so we can set the properties later |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
590 |
*/ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
591 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
592 |
- saved_argv = (String *) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
593 |
- __XtMalloc( (Cardinal)((*argc_in_out + 1) * sizeof(String)) ); |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
594 |
- |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
595 |
- for (i = 0 ; i < *argc_in_out ; i++) saved_argv[i] = (*argv_in_out)[i]; |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
596 |
- saved_argv[i] = NULL; /* NULL terminate that sucker. */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
597 |
- |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
598 |
+ if(*argv_in_out != NULL) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
599 |
+ saved_argv = (String *) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
600 |
+ __XtMalloc( (Cardinal)((*argc_in_out + 1) * sizeof(String)) ); |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
601 |
+ |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
602 |
+ for (i = 0 ; i < *argc_in_out ; i++) saved_argv[i] = (*argv_in_out)[i]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
603 |
+ saved_argv[i] = NULL; /* NULL terminate that sucker. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
604 |
+ } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
605 |
+ saved_argv = NULL; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
606 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
607 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
608 |
*app_context_return = XtCreateApplicationContext(); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
609 |
|
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
610 |
diff --git a/src/Event.c b/src/Event.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
611 |
index 11823d6..7c15e83 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
612 |
--- a/src/Event.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
613 |
+++ b/src/Event.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
614 |
@@ -563,6 +563,14 @@ void XtRegisterDrawable( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
615 |
UNLOCK_APP(app); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
616 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
617 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
618 |
+/* need this for backward compatability */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
619 |
+void _XtRegisterWindow(window, widget) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
620 |
+ Window window; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
621 |
+ Widget widget; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
622 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
623 |
+ XtRegisterDrawable(XtDisplay(widget), (Drawable)window, widget); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
624 |
+} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
625 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
626 |
void XtUnregisterDrawable( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
627 |
Display* display, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
628 |
Drawable drawable) |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
629 |
@@ -613,6 +621,14 @@ void XtUnregisterDrawable( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
630 |
UNLOCK_APP(app); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
631 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
632 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
633 |
+/* need this for backward compatability */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
634 |
+void _XtUnregisterWindow(window, widget) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
635 |
+ register Window window; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
636 |
+ register Widget widget; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
637 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
638 |
+ XtUnregisterDrawable(XtDisplay(widget), (Drawable)window); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
639 |
+} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
640 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
641 |
static void ExpandWWTable( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
642 |
register WWTable tab) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
643 |
{ |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
644 |
diff --git a/src/Geometry.c b/src/Geometry.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
645 |
index d64c8e2..c8ddbd6 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
646 |
--- a/src/Geometry.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
647 |
+++ b/src/Geometry.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
648 |
@@ -330,6 +330,12 @@ _XtMakeGeometryRequest ( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
649 |
} else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
650 |
returnCode = (*manager)(widget, request, reply); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
651 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
652 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
653 |
+ /* leob fix for bug 4153816 */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
654 |
+ if (returnCode == XtGeometryDone && XtIsRealized(widget) && |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
655 |
+ (widget->core.width != request->width || |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
656 |
+ widget->core.height != request->height) ) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
657 |
+ return XtGeometryYes; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
658 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
659 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
660 |
/* |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
661 |
diff --git a/src/Initialize.c b/src/Initialize.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
662 |
index 9783deb..2a5a8a8 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
663 |
--- a/src/Initialize.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
664 |
+++ b/src/Initialize.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
665 |
@@ -473,7 +473,7 @@ static String _XtDefaultLanguageProc( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
666 |
if (! XSetLocaleModifiers("")) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
667 |
XtWarning("X locale modifiers not supported, using default"); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
668 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
669 |
- return setlocale(LC_ALL, NULL); /* re-query in case overwritten */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
670 |
+ return setlocale(LC_CTYPE, NULL); /* re-query in case overwritten */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
671 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
672 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
673 |
XtLanguageProc XtSetLanguageProc( |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
674 |
@@ -994,8 +994,13 @@ Widget XtOpenApplication(XtAppContext *app_context_return, |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
675 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
676 |
LOCK_APP(app_con); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
677 |
XtSetArg(args[num], XtNscreen, DefaultScreenOfDisplay(dpy)); num++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
678 |
- XtSetArg(args[num], XtNargc, saved_argc); num++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
679 |
- XtSetArg(args[num], XtNargv, argv_in_out); num++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
680 |
+ /* only set argc and argv if argv_in_out[0] is not NULL */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
681 |
+ if (argv_in_out && argv_in_out[0]) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
682 |
+ XtSetArg(args[num], XtNargc, saved_argc); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
683 |
+ num++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
684 |
+ XtSetArg(args[num], XtNargv, argv_in_out); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
685 |
+ num++; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
686 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
687 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
688 |
merged_args = XtMergeArgLists(args_in, num_args_in, args, num); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
689 |
num += num_args_in; |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
690 |
diff --git a/src/Makefile.am b/src/Makefile.am |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
691 |
index cf54a5c..a786d94 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
692 |
--- a/src/Makefile.am |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
693 |
+++ b/src/Makefile.am |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
694 |
@@ -74,7 +74,8 @@ DISTCLEANFILES = StringDefs.c |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
695 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
696 |
libXt_la_LIBADD = @XT_LIBS@ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
697 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
698 |
-libXt_la_LDFLAGS = -version-number 6:0:0 -no-undefined |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
699 |
+libXt_la_LDFLAGS = -version-number 4:0:0 -no-undefined \ |
1422
e9cadc0026d8
19461700 Split source & build subdirectories in X builds
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1276
diff
changeset
|
700 |
+ -M $(top_srcdir)/../mapfile-vers -lc |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
701 |
|
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
702 |
# |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
703 |
# The util directory contains a program that builds some of the sources. |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
704 |
diff --git a/src/NextEvent.c b/src/NextEvent.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
705 |
index b1f7bc7..c9b53db 100644 |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
706 |
--- a/src/NextEvent.c |
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
707 |
+++ b/src/NextEvent.c |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
708 |
@@ -347,6 +347,51 @@ static void AdjustTimes ( |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
709 |
#endif |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
710 |
} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
711 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
712 |
+static void CheckAndTrimTimes(XtAppContext app, wait_times_ptr_t wt) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
713 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
714 |
+ struct timeval tv; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
715 |
+ String pptrs[8]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
716 |
+ Cardinal nbr_parms; |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
717 |
+ |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
718 |
+ pptrs[0] = (String)zero_time.tv_sec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
719 |
+ pptrs[1] = (String)zero_time.tv_usec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
720 |
+ pptrs[2] = (String)wt->wait_time.tv_sec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
721 |
+ pptrs[3] = (String)wt->wait_time.tv_usec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
722 |
+ pptrs[4] = (String)wt->max_wait_time.tv_sec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
723 |
+ pptrs[5] = (String)wt->max_wait_time.tv_usec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
724 |
+ pptrs[6] = (String)wt->cur_time.tv_sec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
725 |
+ pptrs[7] = (String)wt->cur_time.tv_usec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
726 |
+ nbr_parms = 8; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
727 |
+ XtAppErrorMsg(app, "communicationError", "select", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
728 |
+ XtCXtToolkitError, "Resetting timer values: zero_time=%lu:%lu, " |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
729 |
+ "wait_time=%lu:%lu, max_wait_time=%lu:%lu, cur_time=%lu:%lu", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
730 |
+ pptrs, &nbr_parms); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
731 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
732 |
+ memset(&zero_time, 0, sizeof(zero_time)); /* Ensure the integrity of */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
733 |
+ /* zero_time. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
734 |
+ if (wt->max_wait_time.tv_sec > 99999999) /* Bring max_wait_time back into */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
735 |
+ { /* acceptable range if nec. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
736 |
+ wt->max_wait_time.tv_sec &= 0xFFFFF; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
737 |
+ wt->max_wait_time.tv_usec = 0; /* (Fractions of a sec are in- */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
738 |
+ /* significant at this level.) */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
739 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
740 |
+ if (app->timerQueue != NULL) /* Do the same for the head of */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
741 |
+ { /* the timer queue if necessary. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
742 |
+ TIMEDELTA(tv, app->timerQueue->te_timer_value, wt->cur_time); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
743 |
+ if (tv.tv_sec > 99999999) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
744 |
+ { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
745 |
+ pptrs[0] = (String)app->timerQueue->te_timer_value.tv_sec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
746 |
+ pptrs[1] = (String)app->timerQueue->te_timer_value.tv_usec; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
747 |
+ nbr_parms = 2; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
748 |
+ XtAppErrorMsg(app, "selectError", "timerQueue", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
749 |
+ XtCXtToolkitError, "timerQueue value %lu:%lu is invalid", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
750 |
+ pptrs, &nbr_parms); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
751 |
+ tv.tv_sec &= 0xFFFFF; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
752 |
+ tv.tv_usec = 0; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
753 |
+ ADD_TIME(app->timerQueue->te_timer_value, wt->cur_time, tv); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
754 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
755 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
756 |
+} |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
757 |
|
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
758 |
static int IoWait ( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
759 |
wait_times_ptr_t wt, |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
760 |
@@ -629,20 +674,56 @@ WaitLoop: |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
761 |
/* |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
762 |
* interrupt occured recalculate time value and wait again. |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
763 |
*/ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
764 |
- if (errno == EINTR || errno == EAGAIN) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
765 |
- if (errno == EAGAIN) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
766 |
- errno = 0; /* errno is not self reseting */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
767 |
- continue; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
768 |
- } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
769 |
- errno = 0; /* errno is not self reseting */ |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
770 |
- |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
771 |
- /* was it interrupted by a signal that we care about? */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
772 |
- if (!ignoreSignals && app->signalQueue != NULL) { |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
773 |
- SignalEventRec *se_ptr = app->signalQueue; |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
774 |
- while (se_ptr != NULL) { |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
775 |
- if (se_ptr->se_notice) { |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
776 |
- if (block && howlong != NULL) |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
777 |
- AdjustHowLong (howlong, &wt.start_time); |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
778 |
+ if (errno == EAGAIN) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
779 |
+ errno = 0; /* errno is not self reseting */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
780 |
+ continue; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
781 |
+ } else if (errno == EBADF) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
782 |
+ /* Bug 4482749 - If we have a bad FD stop monitoring it */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
783 |
+ int i; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
784 |
+ struct timeval tv={0}; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
785 |
+ for (i = 0; i < wf.nfds; i++) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
786 |
+ if (FD_ISSET(i, &wf.rmask) || FD_ISSET(i, &wf.wmask) || |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
787 |
+ FD_ISSET(i, &wf.emask)) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
788 |
+ if (select(i + 1, &wf.rmask, &wf.wmask, &wf.emask, &tv) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
789 |
+ == -1) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
790 |
+ char bad_fd[55]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
791 |
+ String param = bad_fd; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
792 |
+ Cardinal param_count = 1; |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
793 |
+ |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
794 |
+ /* |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
795 |
+ * Get rid of any input procedures on the bad FD |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
796 |
+ * and regenerate the list of FDs we listen to. |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
797 |
+ */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
798 |
+ while (app->input_list[i] != NULL) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
799 |
+ XtRemoveInput((XtInputId)app->input_list[i]); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
800 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
801 |
+ InitFds (app, ignoreEvents, ignoreInputs, &wf); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
802 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
803 |
+ sprintf(bad_fd, "%d", errno); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
804 |
+ XtAppWarningMsg(app, "communicationError", "select", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
805 |
+ XtCXtToolkitError, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
806 |
+ "Select failed; error code %s", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
807 |
+ ¶m, ¶m_count); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
808 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
809 |
+ sprintf(bad_fd, "EBADF error in select() call for file descriptor %d", i); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
810 |
+ XtAppWarning(app, param); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
811 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
812 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
813 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
814 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
815 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
816 |
+ return -1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
817 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
818 |
+ } else if (errno == EINTR) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
819 |
+ errno = 0; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
820 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
821 |
+ /* was it interrupted by a signal that we care about? */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
822 |
+ if (!ignoreSignals && app->signalQueue != NULL) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
823 |
+ SignalEventRec *se_ptr = app->signalQueue; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
824 |
+ while (se_ptr != NULL) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
825 |
+ if (se_ptr->se_notice) { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
826 |
+ if (block && howlong != NULL) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
827 |
+ AdjustHowLong (howlong, &wt.start_time); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
828 |
#ifdef USE_POLL |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
829 |
XtStackFree ((XtPointer) wf.fdlist, fdlist); |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
830 |
#endif |
1072
88d1d779286d
7010623 X11R7.6 Update: Library modules
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
946
diff
changeset
|
831 |
@@ -687,17 +768,33 @@ WaitLoop: |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
832 |
#endif |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
833 |
nfds = 0; |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
834 |
} |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
835 |
- } else { |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
836 |
- char Errno[12]; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
837 |
- String param = Errno; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
838 |
- Cardinal param_count = 1; |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
839 |
- |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
840 |
- sprintf( Errno, "%d", errno); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
841 |
- XtAppWarningMsg(app, "communicationError","select", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
842 |
- XtCXtToolkitError,"Select failed; error code %s", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
843 |
- ¶m, ¶m_count); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
844 |
- continue; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
845 |
- } |
761
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
846 |
+ } else if (errno == EINVAL) { /* (Can be recovered from if */ |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
847 |
+ struct timeval tv={0}; |
9a43833314f0
6867643 X.Org mass minor app & lib module update: July 2009
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
442
diff
changeset
|
848 |
+ |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
849 |
+ nfds = Select(wf.nfds, &wf.rmask, &wf.wmask, &wf.emask, &tv); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
850 |
+ /* Do a non-blocking select to */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
851 |
+ /* eliminate any timeout errors.*/ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
852 |
+ if (nfds == -1) { /* Now try to sort out the good */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
853 |
+ if (errno == EINVAL) { /* and the bad from the ugly. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
854 |
+ char Errno[12]; /* (This is ugly). */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
855 |
+ String param = Errno; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
856 |
+ Cardinal param_count = 1; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
857 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
858 |
+ sprintf(Errno, "%d", errno); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
859 |
+ XtAppErrorMsg(app, "communicationError", "select", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
860 |
+ XtCXtToolkitError, "Select failed; error code %s", |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
861 |
+ ¶m, ¶m_count); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
862 |
+ XtAppError(app, "EINVAL error in select() call"); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
863 |
+ } else { /* If the new error is not about */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
864 |
+ /* an invalid select() parameter,*/ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
865 |
+ continue; /* then simply try again. */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
866 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
867 |
+ } else { /* (Else the error appears to be */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
868 |
+ /* in the timeout parameter.) */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
869 |
+ CheckAndTrimTimes(app, &wt); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
870 |
+ continue; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
871 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
872 |
+ } |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
873 |
} /* timed out or input available */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
874 |
break; |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
875 |
} |
1276
52f85727ce94
7161868 Update X.Org modules to X11R7.7 RC1
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1072
diff
changeset
|
876 |
@@ -750,6 +847,33 @@ WaitLoop: |
351
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
877 |
#define SeCallProc(ptr) \ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
878 |
(*ptr->se_proc) (ptr->se_closure, (XtSignalId*)&ptr); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
879 |
|
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
880 |
+#ifdef sun /*SUNSOFT */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
881 |
+int _XtwaitForSomething( |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
882 |
+ _XtBoolean ignoreTimers, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
883 |
+ _XtBoolean ignoreInputs, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
884 |
+ _XtBoolean ignoreEvents, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
885 |
+ _XtBoolean block, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
886 |
+ unsigned long *howlong, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
887 |
+ XtAppContext app) |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
888 |
+{ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
889 |
+#ifdef XTHREADS |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
890 |
+/* fix for bug 4185875 leob */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
891 |
+return _XtWaitForSomething(app, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
892 |
+ ignoreEvents, ignoreTimers, ignoreInputs, TRUE, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
893 |
+ block, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
894 |
+ TRUE, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
895 |
+ howlong); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
896 |
+#else |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
897 |
+/* fix for bug 4185875 leob */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
898 |
+return _XtWaitForSomething(app, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
899 |
+ ignoreEvents, ignoreTimers, ignoreInputs, TRUE, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
900 |
+ block, |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
901 |
+ howlong); |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
902 |
+#endif |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
903 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
904 |
+} |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
905 |
+#endif /* SUNSOFT */ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
906 |
+ |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
907 |
/* |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
908 |
* Public Routines |
3e3bd6053a4e
6671721 Update libXt to opensrc verion 1.0.5 from X.org
Niveditha Rau <Niveditha.Rau@Sun.COM>
parents:
diff
changeset
|
909 |
*/ |