aboutsummaryrefslogtreecommitdiff
path: root/xorg-server
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server')
-rw-r--r--xorg-server/hw/xfree86/dri2/dri2.c22
-rw-r--r--xorg-server/xkeyboard-config/rules/base.extras.xml.in24
-rw-r--r--xorg-server/xkeyboard-config/rules/base.xml.in14
-rw-r--r--xorg-server/xkeyboard-config/symbols/ca61
-rw-r--r--xorg-server/xkeyboard-config/symbols/lv18
5 files changed, 78 insertions, 61 deletions
diff --git a/xorg-server/hw/xfree86/dri2/dri2.c b/xorg-server/hw/xfree86/dri2/dri2.c
index c754b760f..ae890882b 100644
--- a/xorg-server/hw/xfree86/dri2/dri2.c
+++ b/xorg-server/hw/xfree86/dri2/dri2.c
@@ -358,7 +358,7 @@ allocate_or_reuse_buffer(DrawablePtr pDraw, DRI2ScreenPtr ds,
static void
update_dri2_drawable_buffers(DRI2DrawablePtr pPriv, DrawablePtr pDraw,
- DRI2BufferPtr *buffers, int *out_count, int *width, int *height)
+ DRI2BufferPtr *buffers, int out_count, int *width, int *height)
{
DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
int i;
@@ -374,7 +374,7 @@ update_dri2_drawable_buffers(DRI2DrawablePtr pPriv, DrawablePtr pDraw,
}
pPriv->buffers = buffers;
- pPriv->bufferCount = *out_count;
+ pPriv->bufferCount = out_count;
pPriv->width = pDraw->width;
pPriv->height = pDraw->height;
*width = pPriv->width;
@@ -409,6 +409,8 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
&& (pPriv->serialNumber == DRI2DrawableSerial(pDraw));
buffers = calloc((count + 1), sizeof(buffers[0]));
+ if (!buffers)
+ goto err_out;
for (i = 0; i < count; i++) {
const unsigned attachment = *(attachments++);
@@ -475,7 +477,7 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
*out_count = i;
- update_dri2_drawable_buffers(pPriv, pDraw, buffers, out_count, width, height);
+ update_dri2_drawable_buffers(pPriv, pDraw, buffers, *out_count, width, height);
/* If the client is getting a fake front-buffer, pre-fill it with the
* contents of the real front-buffer. This ensures correct operation of
@@ -501,15 +503,17 @@ err_out:
*out_count = 0;
- for (i = 0; i < count; i++) {
+ if (buffers) {
+ for (i = 0; i < count; i++) {
if (buffers[i] != NULL)
- (*ds->DestroyBuffer)(pDraw, buffers[i]);
- }
+ (*ds->DestroyBuffer)(pDraw, buffers[i]);
+ }
- free(buffers);
- buffers = NULL;
+ free(buffers);
+ buffers = NULL;
+ }
- update_dri2_drawable_buffers(pPriv, pDraw, buffers, out_count, width, height);
+ update_dri2_drawable_buffers(pPriv, pDraw, buffers, *out_count, width, height);
return buffers;
}
diff --git a/xorg-server/xkeyboard-config/rules/base.extras.xml.in b/xorg-server/xkeyboard-config/rules/base.extras.xml.in
index f845488e0..c3dcaa46f 100644
--- a/xorg-server/xkeyboard-config/rules/base.extras.xml.in
+++ b/xorg-server/xkeyboard-config/rules/base.extras.xml.in
@@ -14,6 +14,30 @@
</layout>
<layout>
<configItem>
+ <name>ca</name>
+ <_shortDescription>fr</_shortDescription>
+ <_description>French (Canada)</_description>
+ <languageList><iso639Id>fr</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>kut</name>
+ <_shortDescription>kut</_shortDescription>
+ <_description>Kutenai</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>shs</name>
+ <_shortDescription>shs</_shortDescription>
+ <_description>Secwepemctsin</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
<name>ir</name>
<_shortDescription>Iran</_shortDescription>
<_description>Iran</_description>
diff --git a/xorg-server/xkeyboard-config/rules/base.xml.in b/xorg-server/xkeyboard-config/rules/base.xml.in
index 74666dcd3..fddc4c44b 100644
--- a/xorg-server/xkeyboard-config/rules/base.xml.in
+++ b/xorg-server/xkeyboard-config/rules/base.xml.in
@@ -2179,20 +2179,6 @@
</variant>
<variant>
<configItem>
- <name>shs</name>
- <_shortDescription>shs</_shortDescription>
- <_description>Secwepemctsin</_description>
- </configItem>
- </variant>
- <variant>
- <configItem>
- <name>kut</name>
- <_shortDescription>kut</_shortDescription>
- <_description>Kutenai</_description>
- </configItem>
- </variant>
- <variant>
- <configItem>
<name>eng</name>
<_shortDescription>en</_shortDescription>
<_description>English (Canada)</_description>
diff --git a/xorg-server/xkeyboard-config/symbols/ca b/xorg-server/xkeyboard-config/symbols/ca
index 00ef316f8..328be5bca 100644
--- a/xorg-server/xkeyboard-config/symbols/ca
+++ b/xorg-server/xkeyboard-config/symbols/ca
@@ -451,31 +451,6 @@ xkb_symbols "multix" {
include "level5(rctrl_switch)"
};
-// Secwepemctsin keyboard for X11
-// written by Neskie Manuel <neskiem@gmail.com>
-
-partial alphanumeric_keys
-xkb_symbols "shs" {
-
- include "us"
-
- name[Group1]= "Secwepemctsin";
-
- //Using Dead key to get COMBINING COMMA ABOVE for ejectives on
- //q, l, t, s, m, g, k, p, w, y, r
- //XCompose key is used for the other accute and grave.
-
- key <AB08> { [ comma, less, U0313 ] };
- key <AC01> { [ a, A, aacute, Aacute ] };
- key <AD03> { [ e, E, eacute, Eacute ] };
- key <AD07> { [ u, U, uacute, Uacute ] };
- key <AD08> { [ i, I, iacute, Iacute ] };
- key <AD09> { [ o, O, oacute, Oacute ] };
-
- include "level3(ralt_switch)"
- include "compose(rctrl)"
-};
-
// OLPC Section
xkb_symbols "olpc" {
@@ -492,6 +467,14 @@ xkb_symbols "olpc" {
};
partial alphanumeric_keys
+xkb_symbols "eng" {
+ name[Group1] = "English (Canada)";
+ include "us(basic)"
+};
+
+// EXTRAS:
+
+partial alphanumeric_keys
xkb_symbols "kut" {
//Ejective U0313 and compose accents are from shs layout
@@ -520,8 +503,28 @@ xkb_symbols "kut" {
key <AC10> { [ semicolon, colon,U02BE,U02BE ] };
};
-partial alphanumeric_keys
-xkb_symbols "eng" {
- name[Group1] = "English (Canada)";
- include "us(basic)"
+// Secwepemctsin keyboard for X11
+// written by Neskie Manuel <neskiem@gmail.com>
+
+partial alphanumeric_keys
+xkb_symbols "shs" {
+
+ include "us"
+
+ name[Group1]= "Secwepemctsin";
+
+ //Using Dead key to get COMBINING COMMA ABOVE for ejectives on
+ //q, l, t, s, m, g, k, p, w, y, r
+ //XCompose key is used for the other accute and grave.
+
+ key <AB08> { [ comma, less, U0313 ] };
+ key <AC01> { [ a, A, aacute, Aacute ] };
+ key <AD03> { [ e, E, eacute, Eacute ] };
+ key <AD07> { [ u, U, uacute, Uacute ] };
+ key <AD08> { [ i, I, iacute, Iacute ] };
+ key <AD09> { [ o, O, oacute, Oacute ] };
+
+ include "level3(ralt_switch)"
+ include "compose(rctrl)"
};
+
diff --git a/xorg-server/xkeyboard-config/symbols/lv b/xorg-server/xkeyboard-config/symbols/lv
index 7d38c10b6..176df5d28 100644
--- a/xorg-server/xkeyboard-config/symbols/lv
+++ b/xorg-server/xkeyboard-config/symbols/lv
@@ -42,7 +42,7 @@
//============================================================================
// Latvian QWERTY layout
-// http://en.wikipedia.org/wiki/QWERTY
+// http://en.wikipedia.org/wiki/QWERTY
//
partial default alphanumeric_keys modifier_keys
xkb_symbols "basic" {
@@ -262,7 +262,7 @@ xkb_symbols "modern" {
name[Group1]= "Latvian (modern)";
- key <TLDE> {[ grave, asciitilde, acute, asciitilde ]};
+ key <TLDE> {[ grave, asciitilde, acute, copyright ]};
key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
key <AE02> {[ 2, at, twosuperior, oneeighth ]};
key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
@@ -273,8 +273,8 @@ xkb_symbols "modern" {
key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
key <AE10> {[ 0, parenright, braceright, degree ]};
- key <AE11> {[ minus, underscore, backslash, endash ]};
- key <AE12> {[ equal, plus, bar, emdash ]};
+ key <AE11> {[ minus, underscore, backslash, questiondown ]};
+ key <AE12> {[ equal, plus, endash, emdash ]};
key <AD01> {[ emacron, Emacron, emacron, Emacron ]};
key <AD02> {[ o, O, omacron, Omacron ]};
@@ -285,8 +285,8 @@ xkb_symbols "modern" {
key <AD07> {[ d, D, d, D ]};
key <AD08> {[ imacron, Imacron, imacron, Imacron ]};
key <AD09> {[ l, L, lcedilla, Lcedilla ]};
- key <AD10> {[ g, G, gcedilla, Gcedilla ]};
- key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
+ key <AD10> {[ g, G, gcedilla, Gcedilla ]};
+ Key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
key <AD12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
key <AC01> {[ e, E, e, E ]};
@@ -299,8 +299,8 @@ xkb_symbols "modern" {
key <AC08> {[ i, I, i, I ]};
key <AC09> {[ t, T, t, T ]};
key <AC10> {[ r, R, rcedilla, Rcedilla ]};
- key <AC11> {[ m, M, m, M ]};
- key <AC12> {[ slash, question, backslash, bar ]};
+ key <AC11> {[ m, M, bar, M ]};
+ key <AC12> {[ slash, question, backslash, U263A ]};
key <LSGT> {[ q, Q, q, Q ]};
key <AB01> {[ x, X, q, Q ]};
@@ -310,7 +310,7 @@ xkb_symbols "modern" {
key <AB05> {[ w, W, w, W ]};
key <AB06> {[ f, F, f, F ]};
key <AB07> {[ y, Y, y, Y ]};
- key <AB08> {[ h, H, h, H ]};
+ key <AB08> {[ h, H, h, H ]};
key <AB09> {[ comma, semicolon, less, multiply ]};
key <AB10> {[ period, colon, greater, division ]};
key <SPCE> {[ space, space, apostrophe ]};