fix: initialize slices explicitly and improve uniqueness check robustness
- Initialize list slices with make() to avoid nil slices in ListTempEntries and ListPermEntries - Use strings.Contains() for uniqueness constraint checking to handle variations in error messages
This commit is contained in:
7
db.go
7
db.go
@@ -4,6 +4,7 @@ import (
|
||||
"database/sql"
|
||||
"log/slog"
|
||||
"net"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
_ "modernc.org/sqlite"
|
||||
@@ -173,7 +174,7 @@ func ListTempEntries(db *sql.DB) ([]map[string]interface{}, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var list []map[string]interface{}
|
||||
var list []map[string]interface{} = make([]map[string]interface{}, 0)
|
||||
for rows.Next() {
|
||||
var ip, reason string
|
||||
var expiresAt time.Time
|
||||
@@ -195,7 +196,7 @@ func ListPermEntries(db *sql.DB) ([]map[string]interface{}, error) {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var list []map[string]interface{}
|
||||
var list []map[string]interface{} = make([]map[string]interface{}, 0)
|
||||
for rows.Next() {
|
||||
var entry string
|
||||
if err := rows.Scan(&entry); err != nil {
|
||||
@@ -240,5 +241,5 @@ func isUniqueConstraintError(err error) bool {
|
||||
if err == nil {
|
||||
return false
|
||||
}
|
||||
return err.Error() == "UNIQUE constraint failed: perm_whitelist.entry"
|
||||
return strings.Contains(err.Error(), "UNIQUE constraint failed")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user