-/* int i;
- B_NodoHeader h_izq, h_padre, h_nodo;
- B_NodoEntry *c_izq, *c_padre, *c_nodo;
-
- b_leer_header(nodo, &h_nodo);
- c_nodo = b_leer_claves(nodo, &h_nodo);
- b_leer_header(izq, &h_izq);
- c_izq = b_leer_claves(izq, &h_izq);
- b_leer_header(padre, &h_padre);
- c_padre = b_leer_claves(padre, &h_padre);
-
- for(i=h_nodo.cant; i>0;i++)
- c_nodo[i] = c_nodo[i-1];
-
- h_nodo.cant++;
- c_nodo[0] = c_padre[pos_clave];
- c_nodo[0].hijo_derecho = -1; / * XXX * /
- c_padre[pos_clave] = c_izq[h_izq.cant-1];
- c_padre[pos_clave].hijo_derecho = izq_id;
- h_izq.cant--;
-
- b_actualizar_header(izq, &h_izq);
- b_actualizar_header(padre, &h_padre);
- b_actualizar_header(nodo, &h_nodo);
-*/
+ B_NodoHeader padre_h;
+ B_NodoEntry* padre_entries;
+ /* Leo claves y cabecera del nodo de la izquierda y del padre */
+ b_leer_header(padre, &padre_h);
+ padre_entries = b_leer_claves(padre, &padre_h);
+ /* Inserto en el hijo izquirdo la clave del padre */
+ b_insertar_en_nodo_con_lugar_sin_hijo_izq(idx, padre_entries[padre_pos].clave, padre_entries[padre_pos].dato,
+ izq_id, izq, id_entry_hijo_izq);
+ /* Reemplazo clave del padre por clave nueva */
+ entry.hijo_derecho = id_entry_nodo;
+ padre_entries[padre_pos] = entry;