Program: 80536
Project: 80536
Buggy source:
private StorageRequest<CloudFileClient,CloudFileShare,Void> downloadAttributesImpl(final AccessCondition accessCondition,final FileRequestOptions options){
  final StorageRequest<CloudFileClient,CloudFileShare,Void> getRequest=new StorageRequest<CloudFileClient,CloudFileShare,Void>(options,this.getStorageUri()){
    @Override public void setRequestLocationMode(){
      this.setRequestLocationMode(RequestLocationMode.PRIMARY_OR_SECONDARY);
    }
    @Override public HttpURLConnection buildRequest(    CloudFileClient client,    CloudFileShare share,    OperationContext context) throws Exception {
      return FileRequest.getShareProperties(share.getTransformedAddress().getUri(this.getCurrentLocation()),options,context,accessCondition);
    }
    @Override public void signRequest(    HttpURLConnection connection,    CloudFileClient client,    OperationContext context) throws Exception {
      StorageRequest.signBlobQueueAndFileRequest(connection,client,-1L,context);
    }
    @Override public Void preProcessResponse(    CloudFileShare share,    CloudFileClient client,    OperationContext context) throws Exception {
      if (this.getResult().getStatusCode() != HttpURLConnection.HTTP_OK) {
        this.setNonExceptionedRetryableFailure(true);
        return null;
      }
      final FileShareAttributes attributes=FileResponse.getFileShareAttributes(this.getConnection(),client.isUsePathStyleUris());
      share.metadata=attributes.getMetadata();
      share.properties=attributes.getProperties();
      share.name=attributes.getName();
      return null;
    }
  }
;
  return getRequest;
}

Fixed version (ground truth):
private StorageRequest<CloudFileClient,CloudFileShare,Void> downloadAttributesImpl(final AccessCondition accessCondition,final FileRequestOptions options){
  final StorageRequest<CloudFileClient,CloudFileShare,Void> getRequest=new StorageRequest<CloudFileClient,CloudFileShare,Void>(options,this.getStorageUri()){
    @Override public void setRequestLocationMode(){
      this.setRequestLocationMode(RequestLocationMode.PRIMARY_OR_SECONDARY);
    }
    @Override public HttpURLConnection buildRequest(    CloudFileClient client,    CloudFileShare share,    OperationContext context) throws Exception {
      return FileRequest.getShareProperties(share.getTransformedAddress().getUri(this.getCurrentLocation()),options,context,accessCondition);
    }
    @Override public void signRequest(    HttpURLConnection connection,    CloudFileClient client,    OperationContext context) throws Exception {
      StorageRequest.signBlobQueueAndFileRequest(connection,client,-1L,context);
    }
    @Override public Void preProcessResponse(    CloudFileShare share,    CloudFileClient client,    OperationContext context) throws Exception {
      if (this.getResult().getStatusCode() != HttpURLConnection.HTTP_OK) {
        this.setNonExceptionedRetryableFailure(true);
        return null;
      }
      final FileShareAttributes attributes=FileResponse.getFileShareAttributes(this.getConnection(),client.isUsePathStyleUris());
      share.metadata=attributes.getMetadata();
      share.properties=attributes.getProperties();
      return null;
    }
  }
;
  return getRequest;
}