abc2svg
Check-in [5b2d1cf37e]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:modules: equalbars: fix: crash when |] at EOL and |: with voice overlay in the next line - reported by William Obermeyer
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5b2d1cf37e9f0eec260c9ce032ceffa858611f7e
User & Date: jef 2022-05-07 13:14:51.961
Context
2022-05-07
14:12
core: fix: bad start of music line when voice overlay starting with space or grace notes ... (check-in: 2c336cdff0 user: jef tags: trunk)
13:14
modules: equalbars: fix: crash when |] at EOL and |: with voice overlay in the next line - reported by William Obermeyer ... (check-in: 5b2d1cf37e user: jef tags: trunk)
2022-05-05
13:45
core: fix: clash of dynamics with stems on the low voices - reported by Hudson Lacerda ... (check-in: 5956f07dc3 user: jef tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to modules/equalbars.js.
1
2
3
4
5
6
7
8
9
10
// equalbars.js - module to set equal spaced measure bars
//
// Copyright (C) 2018-2021 Jean-Francois Moine
//
// This file is part of abc2svg.
//
// abc2svg is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.


|







1
2
3
4
5
6
7
8
9
10
// equalbars.js - module to set equal spaced measure bars
//
// Copyright (C) 2018-2022 Jean-Francois Moine
//
// This file is part of abc2svg.
//
// abc2svg is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
		if (s.type == C.BAR && s.seqst) {
			bars.push([s, s.time - t]);
			t = s.time
		}
	}

	// push the last bar if it is not the invisible bar after a key change
	if (!s.invis || s.prev.type != C.KEY)
		bars.push([s, s.time - t])
	else
		bars[bars.length - 1][0] = s	// replace the last bar
	width = s.x
	t = s.time
	if (s.dur)
		t += s.dur;







|







72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
		if (s.type == C.BAR && s.seqst) {
			bars.push([s, s.time - t]);
			t = s.time
		}
	}

	// push the last bar if it is not the invisible bar after a key change
	if (!s.invis || (s.prev && s.prev.type != C.KEY))
		bars.push([s, s.time - t])
	else
		bars[bars.length - 1][0] = s	// replace the last bar
	width = s.x
	t = s.time
	if (s.dur)
		t += s.dur;