+void do_resize(int array[], unsigned* old_size) {
+ int errno = 0;
+ unsigned new_size = 0;
+
+ errno = prompt_value("\nNouvelle taille?", (int*)&new_size);
+ handle_prompt_error(errno, array);
+ array = resize_tab(array, *old_size, new_size);
+ if (new_size > *old_size) {
+ printf("Saisie des valeurs supplementaires du tableau\n");
+ for (unsigned i = *old_size; i < new_size; i++) {
+ errno += prompt_value("Valeur?", &array[i]);
+ handle_prompt_error(errno, array);
+ }
+ }
+ *old_size = new_size;
+}
+
+void handle_prompt_error(int errno, int* tab) {
+ if (errno != 0) {
+ printf("\nMerci de saisir un nombre entier, exiting\n");
+ /* it's somewhat violent but better than looping forever */
+ free_tab(tab);
+ exit(EXIT_FAILURE);
+ }
+}
+