From d7a16f7de648907d5d9156da2f79bd5034f399f9 Mon Sep 17 00:00:00 2001 From: John Emmas Date: Thu, 3 Oct 2013 09:12:02 +0100 Subject: [PATCH] 'gtk2_ardour' - Use 'std::vector' to implement an array whose size is unknown (required to be buildable with MSVC) --- gtk2_ardour/audio_region_view.cc | 15 ++++++++------- gtk2_ardour/big_clock_window.cc | 7 ++++--- gtk2_ardour/generic_pluginui.cc | 5 +++-- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index 0159022f87..028a3c3b48 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -19,6 +19,7 @@ #include #include #include +#include #include @@ -559,9 +560,9 @@ AudioRegionView::reset_fade_in_shape_width (boost::shared_ptr ar, f uint32_t npoints = std::min (gdk_screen_width(), (int) pwidth); double effective_height; - float curve[npoints]; + std::vector curve(npoints); - audio_region()->fade_in()->curve().get_vector (0, audio_region()->fade_in()->back()->when, curve, npoints); + audio_region()->fade_in()->curve().get_vector (0, audio_region()->fade_in()->back()->when, &curve[0], npoints); if (_height >= NAME_HIGHLIGHT_THRESH) { effective_height = _height - NAME_HIGHLIGHT_SIZE - 2; @@ -659,9 +660,9 @@ AudioRegionView::reset_fade_out_shape_width (boost::shared_ptr ar, uint32_t npoints = std::min (gdk_screen_width(), (int) pwidth); double effective_height; - float curve[npoints]; + std::vector curve(npoints); - audio_region()->fade_out()->curve().get_vector (0, audio_region()->fade_out()->back()->when, curve, npoints); + audio_region()->fade_out()->curve().get_vector (0, audio_region()->fade_out()->back()->when, &curve[0], npoints); if (_height >= NAME_HIGHLIGHT_THRESH) { effective_height = _height - NAME_HIGHLIGHT_SIZE - 2; @@ -800,8 +801,8 @@ AudioRegionView::redraw_start_xfade_to (boost::shared_ptr ar, frame } else { - float vec[npoints]; - inverse->curve().get_vector (0, inverse->back()->when, vec, npoints); + std::vector vec(npoints); + inverse->curve().get_vector (0, inverse->back()->when, &vec[0], npoints); for (Points::size_type i = 0, pci = 0; i < npoints; ++i, ++pci) { ArdourCanvas::Duple &p (ipoints[pci]); @@ -1293,7 +1294,7 @@ AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev) } void -AudioRegionView::remove_gain_point_event (ArdourCanvas::Item *item, GdkEvent */*ev*/) +AudioRegionView::remove_gain_point_event (ArdourCanvas::Item *item, GdkEvent* /*ev*/) { ControlPoint *cp = reinterpret_cast (item->get_data ("control_point")); audio_region()->envelope()->erase (cp->model()); diff --git a/gtk2_ardour/big_clock_window.cc b/gtk2_ardour/big_clock_window.cc index 5b369a68c1..c67ae38074 100644 --- a/gtk2_ardour/big_clock_window.cc +++ b/gtk2_ardour/big_clock_window.cc @@ -19,6 +19,7 @@ #include #include +#include #include "ardour_ui.h" #include "audio_clock.h" @@ -138,11 +139,11 @@ BigClockWindow::text_resizer (int, int) if (size != current_size) { string family = fd.get_family(); - char buf[family.length()+16]; - snprintf (buf, family.length()+16, "%s %d", family.c_str(), size); + std::vector buf(family.length()+16); + snprintf (&buf[0], family.length()+16, "%s %d", family.c_str(), size); try { - Pango::FontDescription fd (buf); + Pango::FontDescription fd (&buf[0]); Glib::RefPtr rcstyle = clock.get_modifier_style (); rcstyle->set_font (fd); clock.modify_style (rcstyle); diff --git a/gtk2_ardour/generic_pluginui.cc b/gtk2_ardour/generic_pluginui.cc index ab22d97221..afa4dcdcf5 100644 --- a/gtk2_ardour/generic_pluginui.cc +++ b/gtk2_ardour/generic_pluginui.cc @@ -25,6 +25,7 @@ #include #include #include +#include #include "pbd/stl_delete.h" #include "pbd/xml++.h" @@ -309,9 +310,9 @@ GenericPluginUI::build () // are similar enough to be grouped together. string label, previous_label = ""; - int numbers_in_labels[cui_controls_list.size()]; + std::vector numbers_in_labels(cui_controls_list.size()); - float similarity_scores[cui_controls_list.size()]; + std::vector similarity_scores(cui_controls_list.size()); float most_similar = 0.0, least_similar = 1.0; i = 0;