Skip to content

Commit fcf1322

Browse files
Comments Fixes
1 parent 46cfcee commit fcf1322

File tree

3 files changed

+46
-31
lines changed

3 files changed

+46
-31
lines changed

bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/graphics/FontData.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,10 +200,13 @@ public FontData(String string) {
200200
public FontData(FontData fontData) {
201201
if (fontData == null) SWT.error(SWT.ERROR_NULL_ARGUMENT);
202202

203-
setName(fontData.name);
204-
setHeight(fontData.height);
205-
setStyle(fontData.style);
203+
this.name = fontData.name;
204+
this.height = fontData.height;
205+
this.style = fontData.style;
206206
this.nsName = fontData.nsName;
207+
this.lang = fontData.lang;
208+
this.country = fontData.country;
209+
this.variant = fontData.variant;
207210
}
208211

209212
/**

bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/FontData.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -198,9 +198,17 @@ public FontData(String string) {
198198
public FontData(FontData fontData) {
199199
if (fontData == null) SWT.error(SWT.ERROR_NULL_ARGUMENT);
200200

201-
setName(fontData.name);
202-
setHeight(fontData.height);
203-
setStyle(fontData.style);
201+
this.name = fontData.name;
202+
this.height = fontData.height;
203+
this.style = fontData.style;
204+
this.lang = fontData.lang;
205+
this.country = fontData.country;
206+
this.variant = fontData.variant;
207+
208+
if (fontData.string != null) {
209+
this.string = new byte[fontData.string.length];
210+
System.arraycopy(fontData.string , 0, this.string, 0, fontData.string.length);
211+
}
204212
}
205213

206214
/**

bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/FontData.java

Lines changed: 29 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -256,33 +256,37 @@ public FontData(FontData fontData) {
256256
if (fontData == null)
257257
SWT.error(SWT.ERROR_NULL_ARGUMENT);
258258

259-
if (fontData.data != null) {
260-
LOGFONT newData = new LOGFONT();
261-
setHeight(fontData.getHeightF());
262-
newData.lfHeight = fontData.data.lfHeight;
263-
newData.lfWidth = fontData.data.lfWidth;
264-
newData.lfEscapement = fontData.data.lfEscapement;
265-
newData.lfOrientation = fontData.data.lfOrientation;
266-
newData.lfWeight = fontData.data.lfWeight;
267-
newData.lfItalic = fontData.data.lfItalic;
268-
newData.lfUnderline = fontData.data.lfUnderline;
269-
newData.lfStrikeOut = fontData.data.lfStrikeOut;
270-
newData.lfCharSet = fontData.data.lfCharSet;
271-
newData.lfOutPrecision = fontData.data.lfOutPrecision;
272-
newData.lfClipPrecision = fontData.data.lfClipPrecision;
273-
newData.lfQuality = fontData.data.lfQuality;
274-
newData.lfPitchAndFamily = fontData.data.lfPitchAndFamily;
275-
276-
// Deep copy of the char array lfFaceName
277-
if (fontData.data.lfFaceName != null) {
278-
newData.lfFaceName = new char[fontData.data.lfFaceName.length];
279-
System.arraycopy(fontData.data.lfFaceName, 0, newData.lfFaceName, 0, fontData.data.lfFaceName.length);
280-
}
259+
this.height = fontData.height;
260+
this.lang = fontData.lang;
261+
this.country = fontData.country;
262+
this.variant = fontData.variant;
263+
this.data = cloneLogFont(fontData);
264+
}
281265

282-
this.data = newData;
283-
} else {
284-
this.data = null;
266+
private static LOGFONT cloneLogFont(FontData fontData) {
267+
if(fontData.data == null) return null;
268+
269+
LOGFONT newData = new LOGFONT();
270+
newData.lfHeight = fontData.data.lfHeight;
271+
newData.lfWidth = fontData.data.lfWidth;
272+
newData.lfEscapement = fontData.data.lfEscapement;
273+
newData.lfOrientation = fontData.data.lfOrientation;
274+
newData.lfWeight = fontData.data.lfWeight;
275+
newData.lfItalic = fontData.data.lfItalic;
276+
newData.lfUnderline = fontData.data.lfUnderline;
277+
newData.lfStrikeOut = fontData.data.lfStrikeOut;
278+
newData.lfCharSet = fontData.data.lfCharSet;
279+
newData.lfOutPrecision = fontData.data.lfOutPrecision;
280+
newData.lfClipPrecision = fontData.data.lfClipPrecision;
281+
newData.lfQuality = fontData.data.lfQuality;
282+
newData.lfPitchAndFamily = fontData.data.lfPitchAndFamily;
283+
284+
// Deep copy of the char array lfFaceName
285+
if (fontData.data.lfFaceName != null) {
286+
newData.lfFaceName = new char[fontData.data.lfFaceName.length];
287+
System.arraycopy(fontData.data.lfFaceName, 0, newData.lfFaceName, 0, fontData.data.lfFaceName.length);
285288
}
289+
return newData;
286290
}
287291

288292

0 commit comments

Comments
 (0)