Skip to content

Commit 53fac17

Browse files
committed
fix: Harden startup + SVG input handling
1 parent 3441a0f commit 53fac17

3 files changed

Lines changed: 4 additions & 6 deletions

File tree

src/database.gleam

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,9 @@ pub type Counter {
88
}
99

1010
pub fn setup(connection) {
11-
let _ =
11+
let assert Ok(_) =
1212
sqlight.exec(
13-
"pragma foreign_keys = off;
14-
15-
create table if not exists tb_count (
13+
"create table if not exists tb_count (
1614
id integer primary key autoincrement not null unique,
1715
name text not null unique,
1816
num int not null default (0)

src/request.gleam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ pub fn handle(request, connection, image_cache, index_html) {
4545
case list.key_find(query, "padding") {
4646
Ok(padding) ->
4747
case int.parse(padding) {
48-
Ok(n) -> n
48+
Ok(n) -> int.clamp(n, min: 0, max: 32)
4949
Error(_) -> 6
5050
}
5151
_ -> 6

src/svg.gleam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ pub fn xml(image_cache, theme, number, padding) {
4949
image_cache,
5050
theme,
5151
{
52-
let assert Ok(digits) = int.digits(number, 10)
52+
let assert Ok(digits) = int.digits(int.absolute_value(number), 10)
5353
let digits_padding = padding - list.length(digits)
5454

5555
case digits_padding {

0 commit comments

Comments
 (0)