OpenTTD

Tasklist

FS#6220 - Crash: setting window size to something very small

Attached to Project: OpenTTD
Opened by minimoo (minimoo) - Saturday, 24 January 2015, 22:50 GMT
Last edited by andythenorth (andythenorth) - Tuesday, 22 August 2017, 06:30 GMT
Type Bug
Category Core
Status New
Assigned To No-one
Operating System All
Severity Low
Priority High
Reported Version Version?
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

ttd@vz2:~$ /usr/games/openttd -D -c openttd.cfg
dbg: [net] Starting dedicated version 1.5.0-beta1
dbg: [net] [core] starting network...
dbg: [net] [udp] initializing listeners
dbg: [net] [core] network online, multiplayer available
dbg: [net] Detected broadcast addresses:
dbg: [net] 0) 144.76.30.127
Error: Assertion failed at line 141 of /bamboo/src/core/math_func.hpp: min <= max
Crash encountered, generating crash log...
*** OpenTTD Crash Report ***

Crash at: Sat Jan 24 22:39:33 2015
In game date: 2051-05-09 (27)

Crash reason:
Signal: Aborted (6)
Message: Assertion failed at line 141 of /bamboo/src/core/math_func.hpp: min <= max

OpenTTD version:
Version: 1.5.0-beta1 (0)
NewGRF ver: 150069d8
Bits: 64
Endian: little
Dedicated: no
Build date: Dec 24 2014 19:49:15

Stacktrace:
[00] /usr/games/openttd(_ZNK12CrashLogUnix13LogStacktraceEPcPKc+0x39) [0x7f7c769bc549]
[01] /usr/games/openttd(_ZNK8CrashLog12FillCrashLogEPcPKc+0xf7) [0x7f7c7687f3c7]
[02] /usr/games/openttd(_ZNK8CrashLog12MakeCrashLogEv+0x7e) [0x7f7c7687f65e]
[03] /usr/games/openttd(+0x3a448f) [0x7f7c769bc48f]
[04] /lib/x86_64-linux-gnu/libc.so.6(+0x321e0) [0x7f7c7475c1e0]
[05] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7f7c7475c165]
[06] /lib/x86_64-linux-gnu/libc.so.6(abort+0x180) [0x7f7c7475f3e0]
[07] /usr/games/openttd(+0x390ba8) [0x7f7c769a8ba8]
[08] /usr/games/openttd(+0x513a4e) [0x7f7c76b2ba4e]
[09] /usr/games/openttd(_Z12ResizeWindowP6Windowiib+0x127) [0x7f7c76b2dc97]
[10] /usr/games/openttd(_Z16ReInitAllWindowsv+0x35) [0x7f7c76b30d95]
[11] /usr/games/openttd(+0x3908cc) [0x7f7c769a88cc]
[12] /usr/games/openttd(_Z12openttd_mainiPPc+0x15b1) [0x7f7c769aa591]
[13] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7f7c74748ead]
[14] /usr/games/openttd(+0x1a75b1) [0x7f7c767bf5b1]

Operating system:
Name: Linux
Release: 3.2.0-4-amd64
Version: #1 SMP Debian 3.2.54-2
Machine: x86_64
Compiler: GCC 4.7.2 "4.7.2"

Configuration:
Blitter: null
Graphics set: OpenGFX (1021)
Language: /usr/share/games/openttd/lang/english.lng
Music driver: null
Music set: OpenMSX (96)
Network: no
Sound driver: null
Sound set: OpenSFX (87)
Video driver: dedicated

Fonts:
Small: sprite
Medium: sprite
Large: sprite
Mono: sprite

AI Configuration (local: 0):
0: Human

Libraries:
FontConfig: 2.9.0
FreeType: 2.4.9
ICU: 4.8.1.1
LZMA: 5.1.0alpha
LZO: 2.06
PNG: 1.2.49
SDL: 1.2.15
Zlib: 1.2.7

---- gamelog start ----
Tick 62675: game loaded
Conversion from OTTD savegame without gamelog: version 4, 1
Revision text changed to 1.5.0-beta1, savegame version 194, not modified, _openttd_newgrf_version = 0x150069d8
New game mode: 0 landscape: 1
---- gamelog end ----

*** End of OpenTTD Crash Report ***

Crash log generated.

Writing crash log to disk...
Crash log written to crash.log. Please add this file to any bug reports.

Writing crash savegame...
Crash savegame written to crash.sav. Please add this file and the last (auto)save to any bug reports.

Writing crash screenshot...
Writing crash screenshot failed.

Aborted
ttd@vz2:~$ cat openttd.cfg
[misc]
display_opt =
news_display_opt = 2863311530
news_ticker_sound = true
fullscreen = false
language = english.lng
# This is an absolute minimum resolution.
# But it reduces the cpu-usage drastically. /Osai
resolution = 1,1
screenshot_format =
savegame_format =
rightclick_emulate = false
sprite_cache_size = 2
graphicsset =
soundsset =
musicset =
videodriver =
musicdriver =
sounddriver =
blitter =
small_font =
medium_font =
large_font =
mono_font =
small_size = 0
medium_size = 0
large_size = 0
mono_size = 0
small_aa = false
medium_aa = false
large_aa = false
mono_aa = false
sprite_cache_size_px = 128
player_face = 0
transparency_options = 0
transparency_locks = 0
invisibility_options = 0
keyboard =
keyboard_caps =
last_newgrf_count = 0

[music]
playlist = 0
music_vol = 100
effect_vol = 100
custom_1 = 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,20,0,0,0,0,0
custom_2 = 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
playing = false
shuffle = false
extmidi = timidity

[currency]
rate = 1
separator =
to_euro = 0
prefix = ""
suffix = ""

[network]
max_join_time = 5000
pause_on_join = true
server_bind_ip = 0.0.0.0
server_port = 3979
server_advertise = false
lan_internet = 1
player_name = publicserver
server_password =
rcon_password = rconpass
server_name = #moo - The Public Server
connect_to_ip =
network_id = 913eb7047e1fcd5362544ed5710e319b
autoclean_companies = false
autoclean_unprotected = 12
autoclean_protected = 36
restart_game_date = 0
restart_game_year = 0
max_companies = 5
max_clients = 10
max_spectators = 10
net_frame_freq = 2
min_players = 2
server_lang = ANY
commands_per_frame = 2
max_commands_in_queue = 16
bytes_per_frame = 8
bytes_per_frame_burst = 256
max_init_time = 100
max_download_time = 1000
max_password_time = 2000
max_lag_time = 500
server_admin_port = 3977
server_admin_chat = true
client_name =
admin_password =
default_company_pass =
autoclean_novehicles = 0
min_active_clients = 0
reload_cfg = false
last_host =
last_port = 0
no_http_content_downloads = false

[servers]

[bans]

[autopilot]
language = english
responsiveness = 4
use_irc = no
use_mysql = no
use_console = yes
randomize_password = yes
password_list = /usr/share/dict/words
password_frequency = 300000
authorized_players_only = no
pause_level = -1
motd1 = Welcome, NAME, to the #moo - Public Server
motd2 = For admin support, please email EMAIL
recount_frequency = 300000
smtp_server =

# The following are extra commands that can be used on an IRC channel.
# The keyword alone, preceded by a !, will elicit the response defined here.
# keyword = response
[responses]
url = URL
email = My admin can be reached at EMAIL
playercount = Number of players: PLAYERS
companycount = Number of companies: COMPANIES (at last count)
fish = Today's fish is Trout a la crème. Enjoy your meal.
password = PASSWORD
hufftherabbit = PASSWORD
hello = Hello, I am The Public Server - Enjoy your game and check the !fish.

[win32]
display_hz = 0
force_full_redraw = false
fullscreen_bpp = 8
double_size = false
window_maximize = false

[news_display]
arrival_player = full
arrival_other = full
accident = full
company_info = full
openclose = full
economy = full
advice = full
new_vehicles = full
acceptance = full
subsidies = full
general = full
open = summarized
close = summarized
production_player = summarized
production_other = off
production_nobody = off

[difficulty]
max_no_competitors = 2
number_towns = 0
industry_density = 3
max_loan = 500000
initial_interest = 4
vehicle_costs = 2
competitor_speed = 2
vehicle_breakdowns = 1
subsidy_multiplier = 2
construction_cost = 2
terrain_type = 2
quantity_sea_lakes = 1
economy = true
line_reverse_mode = false
disasters = true
town_council_tolerance = 2

[game_creation]
town_name = english
landscape = temperate
snow_line_height = 4
starting_year = 1950
land_generator = 1
oil_refinery_limit = 48
tgen_smoothness = 1
variety = 0
generation_seed = 150448953
tree_placer = 2
heightmap_rotation = 0
se_flat_world_height = 0
map_x = 9
map_y = 9
water_borders = 15
custom_town_number = 1
custom_sea_level = 2
min_river_length = 16
river_route_random = 5
amount_of_rivers = 2

[vehicle]
road_side = right
train_acceleration_model = 0
roadveh_acceleration_model = 0
train_slope_steepness = 3
roadveh_slope_steepness = 7
max_train_length = 7
smoke_amount = 1
never_expire_vehicles = true
max_trains = 1000
max_roadveh = 100
max_aircraft = 100
max_ships = 0
wagon_speed_limits = false
disable_elrails = false
freight_trains = 1
plane_speed = 4
dynamic_engines = true
plane_crashes = 2
extend_vehicle_life = 0
servint_ispercent = false
servint_trains = 150
servint_roadveh = 150
servint_ships = 360
servint_aircraft = 100

[construction]
build_on_slopes = true
command_pause_level = 1
terraform_per_64k_frames = 4194304
terraform_frame_burst = 4096
clear_per_64k_frames = 4194304
clear_frame_burst = 4096
tree_per_64k_frames = 4194304
tree_frame_burst = 4096
autoslope = true
extra_dynamite = true
max_bridge_length = 64
max_tunnel_length = 64
train_signal_side = 1
road_stop_on_town_road = true
road_stop_on_competitor_road = true
raw_industry_construction = 2
industry_platform = 1
freeform_edges = true
extra_tree_placement = 2

[station]
never_expire_airports = false
station_spread = 64
modified_catchment = true
adjacent_stations = true
distant_join_stations = true

[economy]
town_layout = 2
allow_town_roads = true
found_town = 0
allow_town_level_crossings = true
station_noise_level = false
inflation = false
multiple_industry_per_town = true
bribe = true
exclusive_rights = true
fund_buildings = true
fund_roads = true
give_money = true
smooth_economy = true
allow_shares = true
feeder_payment_share = 75
town_growth_rate = 1
larger_towns = 10
initial_city_size = 2
mod_road_rebuild = true
dist_local_authority = 20
town_noise_population[0] = 800
town_noise_population[1] = 2000
town_noise_population[2] = 4000
infrastructure_maintenance = true

[pf]
forbid_90_deg = true
roadveh_queue = true
pathfinder_for_trains = 2
pathfinder_for_roadvehs = 2
pathfinder_for_ships = 2
reverse_at_signals = false
wait_oneway_signal = 15
wait_twoway_signal = 41
wait_for_pbs_path = 30
reserve_paths = false
path_backoff_interval = 20
opf.pf_maxlength = 4096
opf.pf_maxdepth = 48
npf.npf_max_search_nodes = 10000
npf.npf_rail_firstred_penalty = 1000
npf.npf_rail_firstred_exit_penalty = 10000
npf.npf_rail_lastred_penalty = 1000
npf.npf_rail_station_penalty = 100
npf.npf_rail_slope_penalty = 100
npf.npf_rail_curve_penalty = 100
npf.npf_rail_depot_reverse_penalty = 5000
npf.npf_rail_pbs_cross_penalty = 300
npf.npf_rail_pbs_signal_back_penalty = 1500
npf.npf_buoy_penalty = 200
npf.npf_water_curve_penalty = 100
npf.npf_road_curve_penalty = 100
npf.npf_crossing_penalty = 300
npf.npf_road_drive_through_penalty = 800
npf.npf_road_dt_occupied_penalty = 800
npf.npf_road_bay_occupied_penalty = 1500
npf.maximum_go_to_depot_penalty = 2000
yapf.disable_node_optimization = false
yapf.max_search_nodes = 10000
yapf.rail_firstred_twoway_eol = true
yapf.rail_firstred_penalty = 1000
yapf.rail_firstred_exit_penalty = 10000
yapf.rail_lastred_penalty = 1000
yapf.rail_lastred_exit_penalty = 10000
yapf.rail_station_penalty = 3000
yapf.rail_slope_penalty = 200
yapf.rail_curve45_penalty = 100
yapf.rail_curve90_penalty = 600
yapf.rail_depot_reverse_penalty = 5000
yapf.rail_crossing_penalty = 300
yapf.rail_look_ahead_max_signals = 10
yapf.rail_look_ahead_signal_p0 = 500
yapf.rail_look_ahead_signal_p1 = -100
yapf.rail_look_ahead_signal_p2 = 5
yapf.rail_pbs_cross_penalty = 300
yapf.rail_pbs_station_penalty = 800
yapf.rail_pbs_signal_back_penalty = 1500
yapf.rail_doubleslip_penalty = 100
yapf.rail_longer_platform_penalty = 800
yapf.rail_longer_platform_per_tile_penalty = 0
yapf.rail_shorter_platform_penalty = 4000
yapf.rail_shorter_platform_per_tile_penalty = 0
yapf.road_slope_penalty = 200
yapf.road_curve_penalty = 100
yapf.road_crossing_penalty = 300
yapf.road_stop_penalty = 800
yapf.road_stop_occupied_penalty = 800
yapf.road_stop_bay_occupied_penalty = 1500
yapf.maximum_go_to_depot_penalty = 2000

[order]
no_servicing_if_no_breakdowns = true
improved_load = true
selectgoods = true
serviceathelipad = true
gradual_loading = true

[script]
settings_profile = easy
script_max_opcode_till_suspend = 10000

[ai]
ai_in_multiplayer = false
ai_disable_veh_train = false
ai_disable_veh_roadveh = false
ai_disable_veh_aircraft = false
ai_disable_veh_ship = false

[locale]
currency = EUR
units = metric
digit_group_separator =
digit_group_separator_currency =
digit_decimal_separator =
units_velocity = metric
units_power = metric
units_weight = metric
units_volume = metric
units_force = si
units_height = metric

[gui]
autosave = yearly
threaded_saves = true
date_format_in_default_names = long
show_finances = true
auto_scrolling = 0
reverse_scroll = false
smooth_scroll = false
left_mouse_btn_scrolling = false
measure_tooltip = false
errmsg_duration = 5
hover_delay = 2
osk_activation = double
toolbar_pos = 0
statusbar_pos = 1
window_snap_radius = 10
window_soft_limit = 20
zoom_min = 0
zoom_max = 5
population_in_label = true
link_terraform_toolbar = true
smallmap_land_colour = 0
liveries = 2
prefer_teamchat = false
scrollwheel_scrolling = 0
scrollwheel_multiplier = 5
pause_on_newgame = false
advanced_vehicle_list = 1
timetable_in_ticks = false
timetable_arrival_departure = true
quick_goto = false
loading_indicators = 1
default_rail_type = 0
enable_signal_gui = true
coloured_news_year = 2000
drag_signals_density = 2
drag_signals_fixed_distance = false
semaphore_build_before = 1910
vehicle_income_warn = true
order_review_system = 2
lost_vehicle_warn = true
disable_unsuitable_building = true
new_nonstop = true
stop_location = 2
keep_all_autosave = false
autosave_on_exit = true
max_num_autosaves = 16
auto_euro = true
news_message_timeout = 2
show_track_reservation = false
default_signal_type = 1
cycle_signal_types = 2
station_numtracks = 1
station_platlength = 5
station_dragdrop = true
station_show_coverage = false
persistent_buildingtools = true
expenses_layout = false
missing_strings_threshold = 25
graph_line_thickness = 3
show_date_in_logs = false
settings_restriction_mode = 0
developer = 1
newgrf_developer_tools = false
ai_developer_tools = false
scenario_developer = false
newgrf_show_old_versions = false
newgrf_default_palette = 1
console_backlog_timeout = 100
console_backlog_length = 100
network_chat_box_width = 620
network_chat_box_height = 25
network_chat_timeout = 20
station_gui_group_order = 0
station_gui_sort_by = 0
station_gui_sort_order = 0

[sound]
news_ticker = true
news_full = true
new_year = true
confirm = true
click_beep = true
disaster = true
vehicle = true
ambient = true

[company]
engine_renew = true
engine_renew_months = 6
engine_renew_money = 100000
renew_keep_length = false

[server_bind_addresses]

[ai_players]
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730
none = start_date=730

[game_scripts]
none =

[version]
version_string = 1.4.4
version_number = 14486995

[linkgraph]
recalc_interval = 4
recalc_time = 16
distribution_pax = 0
distribution_mail = 0
distribution_armoured = 0
distribution_default = 0
accuracy = 16
demand_distance = 100
demand_size = 100
short_path_saturation = 80

[newgrf]

[newgrf-static]

This task depends upon

Comment by minimoo (minimoo) - Saturday, 24 January 2015, 22:53 GMT
Removing the line:

resolution = 1,1


From the [misc] section of the configuration resolves the crash.
Comment by Johannes E. Krause (Eddi) - Saturday, 24 January 2015, 23:02 GMT
backtrace using the above .cfg on r27125: https://paste.openttdcoop.org/pbhhwlank
Comment by frosch (frosch) - Sunday, 26 April 2015, 11:16 GMT
Backtrace from the paste:
openttd: /mnt/disk2/spiele/OpenTTD/trunk_clean/src/core/math_func.hpp:141: T Clamp(T, T, T) [with T = int]: Assertion `min <= max' failed.

Program received signal SIGABRT, Aborted.
0x00007ffff54574c9 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff54574c9 in raise () from /lib64/libc.so.6
#1 0x00007ffff5458958 in abort () from /lib64/libc.so.6
#2 0x00007ffff5450296 in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007ffff5450342 in __assert_fail () from /lib64/libc.so.6
#4 0x000000000086a67c in Clamp<int> (max=<optimized out>, min=<optimized out>, a=<optimized out>) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/core/math_func.hpp:141
#5 Clamp (max=<optimized out>, min=<optimized out>, a=<optimized out>) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/core/math_func.hpp:165
#6 EnsureVisibleCaption (w=w@entry=0x1692ac0, nx=-12, ny=0) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/window.cpp:2014
#7 0x000000000086c681 in ResizeWindow (w=w@entry=0x1692ac0, delta_x=<optimized out>, delta_y=<optimized out>, clamp_to_screen=clamp_to_screen@entry=true) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/window.cpp:2065
#8 0x000000000086c7ca in Window::ReInit (this=this@entry=0x1692ac0, rx=rx@entry=0, ry=ry@entry=0) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/window.cpp:972
#9 0x000000000086f545 in ReInitAllWindows () at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/window.cpp:3272
#10 0x0000000000661b75 in LoadStringWidthTable (monospace=false) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/gfx.cpp:1143
#11 0x00000000007fe22d in CheckForMissingGlyphs (base_font=base_font@entry=true, searcher=0x11e8150 <CheckForMissingGlyphs(bool, MissingGlyphSearcher*)::pack_searcher>, searcher@entry=0x0)
at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/strings.cpp:2131
#12 0x00000000007157f0 in LoadIntroGame (load_newgrfs=load_newgrfs@entry=false) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/openttd.cpp:343
#13 0x00000000007173d2 in openttd_main (argc=<optimized out>, argv=<optimized out>) at /mnt/disk2/spiele/OpenTTD/trunk_clean/src/openttd.cpp:855
#14 0x00007ffff5443be5 in __libc_start_main () from /lib64/libc.so.6
#15 0x000000000056f21d in _start () at ../sysdeps/x86_64/start.S:122

Loading...