Adjacent on which side? And what do you do in case the adjacent ones are also negative?
Here's one way to do it, taking the values of the elements previous to the negative elements regardless of whether those themselves are also negative. (And if the first element is negative it doesn't get changed.)
idx = find(x < 0);
idx(idx == 1) = ;
x(idx) = x(idx-1);
Perhaps you can adapt this to suit your requirements precisely.