AaronDavidNewman / Smoosic

A music notation editor written in javascript
Other
98 stars 14 forks source link

crash in 2nd paste #34

Closed AaronDavidNewman closed 3 years ago

AaronDavidNewman commented 3 years ago

Cut over 2 measures and paste. Then paste the same buffer again. There is an exception:

In general, pasting has never worked after the first time. You should be able to paste the same buffer as many times as you want.

{ "message": "Cannot read property 'notes' of undefined", "stack": "TypeError: Cannot read property 'notes' of undefined\n at PasteBuffer.pasteSelections (file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:14826:14)\n at SuiScoreViewOperations.paste (file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:5471:22)\n at SuiKeyCommands.paste (file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:33781:15)\n at suiController.evKey (file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:24038:45)\n at file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:28808:35\n at Array.forEach (<anonymous>)\n at browserEventSource.evKey (file:///C:/Users/Daddy/Documents/GitHub/VexflowEditor/build/smoosic.js:28807:26)", "lastOperation": "paste", "scoreString": { "a": { "b": { "c": 30, "d": 30, "e": 40, "f": 40, "g": 816, "h": 1056, "i": 0, "j": 30, "k": 10, "l": 1, "m": 2.107843137254902, "n": 0, "o": 1 }, "q": 0, "r": {}, "me": [ { "ne": "engraving", "oe": 1, "xb": "Bravura", "wb": 1, "pe": false }, { "ne": "score", "oe": 2, "xb": "Merriweather", "wb": 14, "pe": false }, { "ne": "chords", "oe": 3, "xb": "Roboto Slab", "wb": 14, "pe": false }, { "ne": "lyrics", "oe": 4, "xb": "Merriweather", "wb": 12, "pe": false } ], "hf": { "if": true, "jf": true, "kf": 4096, "lf": 6144 }, "mf": { "ne": "Smoosical", "nf": 1 } }, "s": [ { "t": 0, "u": 10, "v": 40, "w": 0, "x": 1600, "y": 90, "q": 0, "r": {}, "z": {}, "aa": { "ba": "Treble Instrument", "ca": "0", "da": "treble" }, "ea": [], "va": [ { "ya": { "ya": 0, "za": 0, "ab": 0, "t": 0 }, "bb": 59.980000000000004, "cb": [], "db": [ { "eb": [ { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" }, { "ka": [ { "jb": "a", "lb": "n", "kb": 4 } ], "da": "treble" }, { "ka": [ { "jb": "a", "lb": "n", "kb": 4 } ], "da": "treble" }, { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "da": "treble" } ] } ], "ea": [] }, { "ya": { "ya": 1, "za": 1, "ab": 1, "t": 0 }, "bb": 6, "cb": [], "db": [ { "eb": [ { "ka": [ { "jb": "c", "lb": "n", "kb": 5 } ], "da": "treble" }, { "ka": [ { "jb": "d", "lb": "n", "kb": 5 } ], "da": "treble" }, { "ka": [ { "jb": "e", "lb": "n", "kb": 5 } ], "da": "treble" }, { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" } ] } ], "ea": [] }, { "ya": { "ya": 2, "za": 2, "ab": 2, "t": 0 }, "bb": 6, "cb": [], "db": [ { "eb": [ { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" }, { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" }, { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" }, { "ka": [ { "jb": "b", "lb": "n", "kb": 4 } ], "oc": "r", "da": "treble" } ] } ], "ea": [] } ] } ], "yc": [], "ge": [], "yd": [], "ee": { "wa": { "0": "4/4" }, "xa": { "0": "c" }, "fe": { "0": { "sa": "SmoTempoText", "pa": { "qa": "auto46672", "ra": "SmoTempoText" }, "id": "duration", "nb": 120, "ob": false, "pb": 4096, "jd": "Allegro", "ta": 0 } } }, "dictionary": { "a": "score", "b": "layout", "c": "leftMargin", "d": "rightMargin", "e": "topMargin", "f": "bottomMargin", "g": "pageWidth", "h": "pageHeight", "i": "orientation", "j": "interGap", "k": "intraGap", "l": "svgScale", "m": "zoomScale", "n": "zoomMode", "o": "pages", "p": "pageSize", "q": "startIndex", "r": "renumberingMap", "s": "staves", "t": "staffId", "u": "staffX", "v": "staffY", "w": "adjY", "x": "staffWidth", "y": "staffHeight", "z": "keySignatureMap", "aa": "instrumentInfo", "ba": "instrumentName", "ca": "keyOffset", "da": "clef", "ea": "modifiers", "fa": "startSelector", "ga": "staff", "ha": "measure", "ia": "voice", "ja": "tick", "ka": "pitches", "la": "endSelector", "ma": "xOffset", "na": "cp1y", "oa": "cp2y", "pa": "attrs", "qa": "id", "ra": "type", "sa": "ctor", "ta": "yOffset", "ua": "position", "va": "measures", "wa": "timeSignature", "xa": "keySignature", "ya": "measureNumber", "za": "measureIndex", "ab": "systemIndex", "bb": "adjX", "cb": "tuplets", "db": "voices", "eb": "notes", "fb": "ticks", "gb": "numerator", "hb": "denominator", "ib": "remainder", "jb": "letter", "kb": "octave", "lb": "accidental", "mb": "symbol", "nb": "bpm", "ob": "display", "pb": "beatDuration", "qb": "beamBeats", "rb": "endBeam", "sb": "textModifiers", "tb": "text", "ub": "endChar", "vb": "fontInfo", "wb": "size", "xb": "family", "yb": "style", "zb": "weight", "ac": "classes", "bc": "verse", "cc": "fill", "dc": "scaleX", "ec": "scaleY", "fc": "translateX", "gc": "translateY", "hc": "selector", "ic": "renderedBox", "jc": "x", "kc": "y", "lc": "width", "mc": "height", "nc": "logicalBox", "oc": "noteType", "pc": "cautionary", "qc": "articulations", "rc": "articulation", "sc": "activeVoice", "tc": "flagState", "uc": "invert", "vc": "fontSize", "wc": "yOffsetLine", "xc": "yOffsetPixels", "yc": "scoreText", "zc": "backup", "ad": "edited", "bd": "pagination", "cd": "boxModel", "dd": "justification", "ed": "autoLayout", "fd": "ornaments", "gd": "offset", "hd": "ornament", "id": "tempoMode", "jd": "tempoText", "kd": "barline", "ld": "systemBreak", "md": "graceNotes", "nd": "tones", "od": "tuplet", "pd": "beam_group", "qd": "renderId", "rd": "numNotes", "sd": "totalTicks", "td": "stemTicks", "ud": "durationMap", "vd": "bracketed", "wd": "ratioed", "xd": "location", "yd": "systemGroups", "zd": "leftConnector", "ae": "padLeft", "be": "customStretch", "ce": "engravingFont", "de": "customProportion", "ee": "columnAttributeMap", "fe": "tempo", "ge": "textGroups", "he": "textBlocks", "ie": "backupBlocks", "je": "blocks", "ke": "_text", "le": "parser", "me": "fonts", "ne": "name", "oe": "purpose", "pe": "custom", "qe": "transposeIndex", "re": "noteHead", "se": "slash", "te": "pointSize", "ue": "spacing", "ve": "relativePosition", "we": "activeText", "xe": "attachToSelector", "ye": "musicXOffset", "ze": "musicYOffset", "af": "formattingIterations", "bf": "startBar", "cf": "endBar", "df": "endingId", "ef": "autoJustify", "ff": "thickness", "gf": "number", "hf": "preferences", "if": "autoPlay", "jf": "autoAdvance", "kf": "defaultDupleDuration", "lf": "defaultTripleDuration", "mf": "scoreInfo", "nf": "version" } } }

AaronDavidNewman commented 3 years ago

fixed here https://github.com/AaronDavidNewman/Smoosic/commit/a09de5f08d8c26d40b9cdeeb5eb58e3c6fe36144