xLightsSequencer / xLights

xLights is a sequencer for Lights. xLights has usb and E1.31 drivers. You can create sequences in this object oriented program. You can create playlists, schedule them, test your hardware, convert between different sequencers.
GNU General Public License v3.0
549 stars 208 forks source link

Crash when pasting #4551

Closed davpacjr closed 5 months ago

davpacjr commented 5 months ago

NOTE: IF YOU DO NOT ATTACH A SEQUENCE THAT DEMONSTRATES YOUR PROBLEM THEN THERE IS A HIGH PROBABILITY YOUR ISSUE WILL JUST BE CLOSED AND NOT INVESTIGATED.

Program crashes when pasting IN WINDOWS 11 When you select an object in the layout and press Control C and then control v the item pastes just fine. BUT if you select the object, and do a control C. Then just click in the layout so nothing is selected and press control V you will then crash the program.

To Reproduce Steps to reproduce the behavior: (and/or link to a short video showing the problem with audio track describing what you are doing)

  1. Go to layout
  2. Click on any item in the layout
  3. Press Control C to copy
  4. Deselect the item you just copied
  5. Now press Control V to paste that item
  6. The program will crash

Expected behavior I would expect that even though the item is not selected because it is copied it would be pasted on the layout

Screenshots If applicable, add screenshots to help explain your problem.

Youtube Video of the issue. https://www.youtube.com/watch?v=58Wx4RSj6xc

Versions (please complete the following information):

Attachments

If you would prefer not to post your sequences publically please say so and be ready to PM them to one of the developers when asked.

AzGilrock commented 5 months ago

Yup....looks like the code that was added to create aliases is trying to use the selected object to figure out what was copied....big no no.

AzGilrock commented 5 months ago

The groups from the source model are going to need to be saved with the CopyData if needed when pasting.

AzGilrock commented 5 months ago

It was easier to fix than I thought. Just needed to grab the name from the source data.