From 6d9f1ed59cc1b0bfff3117d9c546957c935ed0ca Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Sun, 31 Oct 2021 14:59:35 -0400 Subject: [PATCH] don't crash if we have an empty ObjectModel (i.e. 'new document') --- .../Waveform/Controls/WaveformAudioEditorTrackWaveform.cs | 2 ++ .../Multimedia/Audio/Waveform/WaveformAudioObjectModel.cs | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Plugins.UserInterface/UniversalEditor.Plugins.Multimedia.UserInterface/Editors/Multimedia/Audio/Waveform/Controls/WaveformAudioEditorTrackWaveform.cs b/Plugins.UserInterface/UniversalEditor.Plugins.Multimedia.UserInterface/Editors/Multimedia/Audio/Waveform/Controls/WaveformAudioEditorTrackWaveform.cs index d9269f44..58ed8908 100644 --- a/Plugins.UserInterface/UniversalEditor.Plugins.Multimedia.UserInterface/Editors/Multimedia/Audio/Waveform/Controls/WaveformAudioEditorTrackWaveform.cs +++ b/Plugins.UserInterface/UniversalEditor.Plugins.Multimedia.UserInterface/Editors/Multimedia/Audio/Waveform/Controls/WaveformAudioEditorTrackWaveform.cs @@ -106,6 +106,8 @@ namespace UniversalEditor.Plugins.Multimedia.UserInterface.Editors.Multimedia.Au WaveformAudioEditorTrack track = (Parent as WaveformAudioEditorTrack); WaveformAudioObjectModel wave = track.ObjectModel; + if (wave.RawSamples == null) + return; ScrollBounds = new MBS.Framework.Drawing.Dimension2D(wave.RawSamples.Length, 0); diff --git a/Plugins/UniversalEditor.Plugins.Multimedia/ObjectModels/Multimedia/Audio/Waveform/WaveformAudioObjectModel.cs b/Plugins/UniversalEditor.Plugins.Multimedia/ObjectModels/Multimedia/Audio/Waveform/WaveformAudioObjectModel.cs index 2da0f2fe..cb9fb7d8 100644 --- a/Plugins/UniversalEditor.Plugins.Multimedia/ObjectModels/Multimedia/Audio/Waveform/WaveformAudioObjectModel.cs +++ b/Plugins/UniversalEditor.Plugins.Multimedia/ObjectModels/Multimedia/Audio/Waveform/WaveformAudioObjectModel.cs @@ -152,8 +152,8 @@ namespace UniversalEditor.ObjectModels.Multimedia.Audio.Waveform clone.Header.DataRate = this.Header.DataRate; clone.Header.FormatTag = this.Header.FormatTag; clone.Header.SampleRate = this.Header.SampleRate; - clone.RawData = (this.mvarRawData.Clone() as byte[]); - clone.RawSamples = (this.RawSamples.Clone() as WaveformAudioSamples); + clone.RawData = (this.RawData?.Clone() as byte[]); + clone.RawSamples = (this.RawSamples?.Clone() as WaveformAudioSamples); clone.Information.AlbumTitle = (Information.AlbumTitle.Clone() as string); clone.Information.Comments = (Information.Comments.Clone() as string);