summaryrefslogtreecommitdiff
path: root/src/AsciiSink.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/AsciiSink.c')
-rw-r--r--src/AsciiSink.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/AsciiSink.c b/src/AsciiSink.c
index 29850ba..74587c6 100644
--- a/src/AsciiSink.c
+++ b/src/AsciiSink.c
@@ -296,7 +296,7 @@ static int
GetTextWidth(TextWidget ctx, int current_width, XFontStruct *font,
XawTextPosition from, int length)
{
- int i, width = 0;
+ int width = 0;
XawTextBlock block;
XawTextPosition pos = from;
@@ -304,7 +304,7 @@ GetTextWidth(TextWidget ctx, int current_width, XFontStruct *font,
pos = XawTextSourceRead(ctx->text.source, from, &block, length);
length = (int)(length - (pos - from));
from = pos;
- for (i = 0; i < block.length; i++)
+ for (int i = 0; i < block.length; i++)
width += CharWidth((AsciiSinkObject)ctx->text.sink, font,
current_width + width,
(unsigned char)block.ptr[i]);
@@ -340,7 +340,6 @@ void CalculateBearing(TextWidget ctx, XawTextPosition position, int x, int y,
XawTextAnchor *anchor;
XawTextEntity *entity;
XawTextProperty *property;
- XawTextPaintStruct *paint;
XawTextBlock block;
XFontStruct *font;
@@ -373,7 +372,7 @@ void CalculateBearing(TextWidget ctx, XawTextPosition position, int x, int y,
rbearing = font->per_char[c - font->min_char_or_byte2].rbearing -
font->per_char[c - font->min_char_or_byte2].width;
if (rbearing > 0) {
- paint = XtNew(XawTextPaintStruct);
+ XawTextPaintStruct *paint = XtNew(XawTextPaintStruct);
paint->next = sink->text_sink.paint->bearings;
sink->text_sink.paint->bearings = paint;
paint->x = x - (paint->width = CharWidth(sink, font, 0, c));
@@ -408,7 +407,7 @@ void CalculateBearing(TextWidget ctx, XawTextPosition position, int x, int y,
(c >= font->min_char_or_byte2 && c <= font->max_char_or_byte2))
lbearing = font->per_char[c - font->min_char_or_byte2].lbearing;
if (lbearing < 0) {
- paint = XtNew(XawTextPaintStruct);
+ XawTextPaintStruct *paint = XtNew(XawTextPaintStruct);
paint->next = sink->text_sink.paint->bearings;
sink->text_sink.paint->bearings = paint;
paint->x = x;
@@ -442,10 +441,9 @@ AsciiPreparePaint(Widget w, int y, int line,
XawTextAnchor *anchor;
XawTextEntity *entity;
XawTextProperty *property;
- int i, ascent = 0, descent = 0, xl, xr, x = ctx->text.left_margin, bufsiz;
+ int i, ascent = 0, descent = 0, xl, xr, x = ctx->text.left_margin;
XawTextBlock block;
XFontStruct *font;
- XawTextPaintStruct *paint;
if (!sink->ascii_sink.echo)
return;
@@ -530,7 +528,9 @@ AsciiPreparePaint(Widget w, int y, int line,
/* pass 2: feed the XawTextPaintStruct lists */
pos = from;
while (pos < to) {
- paint = XtNew(XawTextPaintStruct);
+ int bufsiz;
+ XawTextPaintStruct *paint = XtNew(XawTextPaintStruct);
+
paint->next = sink->text_sink.paint->paint;
sink->text_sink.paint->paint = paint;
paint->x = x;
@@ -1462,13 +1462,14 @@ FindDistance(Widget w, XawTextPosition fromPos, int fromx,
XFontStruct *font = sink->ascii_sink.font;
Widget source = ctx->text.source;
XawTextPosition idx, pos;
- unsigned char c;
XawTextBlock blk;
int i, rWidth;
pos = XawTextSourceRead(source, fromPos, &blk, toPos - fromPos);
rWidth = 0;
for (i = 0, idx = fromPos; idx < toPos; i++, idx++) {
+ unsigned char c;
+
if (i >= blk.length) {
i = 0;
pos = XawTextSourceRead(source, pos, &blk, toPos - pos);