Skip to content

Commit 2065996

Browse files
authored
fix(java): Avoid rounding through implict cast to uint16_t (#65)
1 parent c165bfc commit 2065996

10 files changed

Lines changed: 32 additions & 21 deletions

File tree

build/Build.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ static int LoadSkiaVersion()
3737
return int.Parse(text[(startOfMarker + marker.Length)..endOfMarker].Trim());
3838
}
3939

40-
static readonly Version FileVersionBase = new Version(3, 2, 0, 0);
40+
static readonly Version FileVersionBase = new Version(3, 3, 0, 0);
4141

4242
#endregion
4343

lib/dotnet/Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<PropertyGroup>
44
<DebugType>portable</DebugType>
55
<DebugSymbols>true</DebugSymbols>
6-
<Version Condition=" '$(Version)' == '' ">3.2.135</Version>
6+
<Version Condition=" '$(Version)' == '' ">3.3.135</Version>
77
<AssemblyVersion Condition=" '$(AssemblyVersion)' == '' ">$(Version).0</AssemblyVersion>
88
<FileVersion Condition=" '$(FileVersion)' == '' ">$(AssemblyVersion)</FileVersion>
99
<NeutralLanguage>en</NeutralLanguage>

lib/java/build.gradle.kts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ var libAuthorId = ""
2020
var libAuthorName = ""
2121
var libOrgUrl = ""
2222
var libCompany = ""
23-
var libVersion = "3.2.135"
23+
var libVersion = "3.3.135"
2424
var libProjectUrl = ""
2525
var libGitUrlHttp = ""
2626
var libGitUrlGit = ""
@@ -70,6 +70,8 @@ loadSetting("ALPHASKIA_ISSUES_URL", "alphaskiaIssuesUrl") { libIssuesUrl = it }
7070
group = libGroup
7171
version = libVersion
7272

73+
internal fun Project.findOptionalProperty(propertyName: String) = findProperty(propertyName)?.toString()
74+
7375
subprojects {
7476
apply<MavenPublishPlugin>()
7577
apply(plugin = "maven-publish")
@@ -111,6 +113,15 @@ subprojects {
111113

112114
afterEvaluate {
113115
configure<MavenPublishBaseExtension> {
116+
val inMemoryKeyFile = project.findOptionalProperty("signingInMemoryKeyFile")
117+
if (inMemoryKeyFile != null) {
118+
val inMemoryKeyId = project.findOptionalProperty("signingInMemoryKeyId")
119+
val inMemoryKeyPassword = project.findOptionalProperty("signingInMemoryKeyPassword").orEmpty()
120+
val signing = project.extensions.getByType(SigningExtension::class.java)
121+
val inMemoryKey = File(inMemoryKeyFile).readText()
122+
signing.useInMemoryPgpKeys(inMemoryKeyId, inMemoryKey, inMemoryKeyPassword)
123+
}
124+
114125
pom {
115126
val artifactId = tasks.withType<Jar>().firstOrNull()?.archiveBaseName?.get()
116127
?: throw Exception("Could not find artifact id for maven POM")

lib/java/jni/src/AlphaSkiaTextMetrics.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ extern "C"
99
jlong handle = get_handle(env, instance);
1010
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
1111

12-
uint16_t value = alphaskia_text_metrics_get_width(reinterpret_cast<alphaskia_text_metrics_t>(handle));
12+
float value = alphaskia_text_metrics_get_width(reinterpret_cast<alphaskia_text_metrics_t>(handle));
1313
return static_cast<jfloat>(value);
1414
}
1515

@@ -18,7 +18,7 @@ extern "C"
1818
jlong handle = get_handle(env, instance);
1919
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
2020

21-
uint16_t value = alphaskia_text_metrics_get_actual_bounding_box_left(reinterpret_cast<alphaskia_text_metrics_t>(handle));
21+
float value = alphaskia_text_metrics_get_actual_bounding_box_left(reinterpret_cast<alphaskia_text_metrics_t>(handle));
2222
return static_cast<jfloat>(value);
2323
}
2424

@@ -27,7 +27,7 @@ extern "C"
2727
jlong handle = get_handle(env, instance);
2828
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
2929

30-
uint16_t value = alphaskia_text_metrics_get_actual_bounding_box_right(reinterpret_cast<alphaskia_text_metrics_t>(handle));
30+
float value = alphaskia_text_metrics_get_actual_bounding_box_right(reinterpret_cast<alphaskia_text_metrics_t>(handle));
3131
return static_cast<jfloat>(value);
3232
}
3333

@@ -36,7 +36,7 @@ extern "C"
3636
jlong handle = get_handle(env, instance);
3737
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
3838

39-
uint16_t value = alphaskia_text_metrics_get_font_bounding_box_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
39+
float value = alphaskia_text_metrics_get_font_bounding_box_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
4040
return static_cast<jfloat>(value);
4141
}
4242

@@ -45,7 +45,7 @@ extern "C"
4545
jlong handle = get_handle(env, instance);
4646
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
4747

48-
uint16_t value = alphaskia_text_metrics_get_font_bounding_box_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
48+
float value = alphaskia_text_metrics_get_font_bounding_box_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
4949
return static_cast<jfloat>(value);
5050
}
5151

@@ -54,7 +54,7 @@ extern "C"
5454
jlong handle = get_handle(env, instance);
5555
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
5656

57-
uint16_t value = alphaskia_text_metrics_get_actual_bounding_box_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
57+
float value = alphaskia_text_metrics_get_actual_bounding_box_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
5858
return static_cast<jfloat>(value);
5959
}
6060

@@ -63,7 +63,7 @@ extern "C"
6363
jlong handle = get_handle(env, instance);
6464
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
6565

66-
uint16_t value = alphaskia_text_metrics_get_actual_bounding_box_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
66+
float value = alphaskia_text_metrics_get_actual_bounding_box_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
6767
return static_cast<jfloat>(value);
6868
}
6969

@@ -72,7 +72,7 @@ extern "C"
7272
jlong handle = get_handle(env, instance);
7373
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
7474

75-
uint16_t value = alphaskia_text_metrics_get_em_height_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
75+
float value = alphaskia_text_metrics_get_em_height_ascent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
7676
return static_cast<jfloat>(value);
7777
}
7878

@@ -81,7 +81,7 @@ extern "C"
8181
jlong handle = get_handle(env, instance);
8282
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
8383

84-
uint16_t value = alphaskia_text_metrics_get_em_height_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
84+
float value = alphaskia_text_metrics_get_em_height_descent(reinterpret_cast<alphaskia_text_metrics_t>(handle));
8585
return static_cast<jfloat>(value);
8686
}
8787

@@ -90,7 +90,7 @@ extern "C"
9090
jlong handle = get_handle(env, instance);
9191
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
9292

93-
uint16_t value = alphaskia_text_metrics_get_hanging_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
93+
float value = alphaskia_text_metrics_get_hanging_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
9494
return static_cast<jfloat>(value);
9595
}
9696

@@ -99,7 +99,7 @@ extern "C"
9999
jlong handle = get_handle(env, instance);
100100
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
101101

102-
uint16_t value = alphaskia_text_metrics_get_alphabetic_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
102+
float value = alphaskia_text_metrics_get_alphabetic_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
103103
return static_cast<jfloat>(value);
104104
}
105105

@@ -108,7 +108,7 @@ extern "C"
108108
jlong handle = get_handle(env, instance);
109109
CHECK_HANDLE_RETURN(handle, static_cast<jfloat>(0))
110110

111-
uint16_t value = alphaskia_text_metrics_get_ideographic_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
111+
float value = alphaskia_text_metrics_get_ideographic_baseline(reinterpret_cast<alphaskia_text_metrics_t>(handle));
112112
return static_cast<jfloat>(value);
113113
}
114114

lib/node/alphaskia-linux/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@coderline/alphaskia-linux",
3-
"version": "3.2.135",
3+
"version": "3.3.135",
44
"description": "The node addon for alphaSkia enabling it to run on Linux",
55
"engines": {
66
"node": ">=18.0.0"

lib/node/alphaskia-macos/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@coderline/alphaskia-macos",
3-
"version": "3.2.135",
3+
"version": "3.3.135",
44
"description": "The node addon for alphaSkia enabling it to run on MacOS",
55
"engines": {
66
"node": ">=18.0.0"

lib/node/alphaskia-windows/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@coderline/alphaskia-windows",
3-
"version": "3.2.135",
3+
"version": "3.3.135",
44
"description": "The node addon for alphaSkia enabling it to run on Windows",
55
"engines": {
66
"node": ">=18.0.0"

lib/node/alphaskia/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@coderline/alphaskia",
3-
"version": "3.2.135",
3+
"version": "3.3.135",
44
"description": "A Skia based rendering backend for alphaTab.",
55
"module": "./dist/alphaskia.mjs",
66
"typings": "./dist/alphaskia.d.ts",

test/java/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55
}
66

77
// do not inline (updated dynamically via Nuke)
8-
var libVersion = "3.2.135"
8+
var libVersion = "3.3.135"
99

1010
group = "alphaTab.alphaSkia"
1111
version = libVersion

test/node/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "alphaskiatest",
3-
"version": "3.2.135",
3+
"version": "3.3.135",
44
"private": true,
55
"scripts": {
66
"start": "tsx index.ts"

0 commit comments

Comments
 (0)