matriz dinámica bidimensional (realloc en c)

Estoy tratando de cargar dos números dobles desde la entrada a la matriz bidimensional que se asignan dinámicamente por cada entrada del usuario.

#include <stdio.h>
#include <stdlib.h>


int main(int argc, char** argv) {

    int count;
    double number1, number2, **numbers;

    while (scanf("%lf,%lf", number1, number2) != EOF) {

        count++;
        numbers = (double**) realloc(numbers, count * 2 * sizeof (double));
        if (numbers == NULL) {
            exit(1);
        }
        numbers[count][0] = number1;
        numbers[count][1] = number2;
    }

    return 0;
}

El programa falla cada vez que intento guardar valor en la matriz (probablemente un problema de memoria). Se compila sin problemas.

¿Alguien me puede mostrar cómo reasignar correctamente la nueva matriz?

Gracias por cualquier ayuda.

Respuestas a la pregunta(3)

Su respuesta a la pregunta