process_input_buffer